aboutsummaryrefslogtreecommitdiff
path: root/src/insert.c
diff options
context:
space:
mode:
authordrh <>2021-02-04 23:20:13 +0000
committerdrh <>2021-02-04 23:20:13 +0000
commit70bd2124ed8dba89ee3ad2ccb25c5686b1d0ead5 (patch)
tree3f27cf04afa15c2b4e1e001bc8c99b6b3d2c5e02 /src/insert.c
parent8ab79d6135b33523a5d7f5c988b080a63fb15db3 (diff)
parent7dec804d4210cf928820693735135f4307fef050 (diff)
downloadsqlite-70bd2124ed8dba89ee3ad2ccb25c5686b1d0ead5.tar.gz
sqlite-70bd2124ed8dba89ee3ad2ccb25c5686b1d0ead5.zip
Change the RETURNING algorithm so that outputs accumulate in an ephemeral
table until all modifications have been completed, and only then do results start being returned. This should help prevent problems with interleaved sqlite3_step() calls on two separate DML statements. It also seems to be closer to how PostgreSQL works, which might prevent compatibility problems. FossilOrigin-Name: c4615eb28c3dd2d473daf104f32e60d02799f3158d9d275a899c39129cc71401
Diffstat (limited to 'src/insert.c')
-rw-r--r--src/insert.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/src/insert.c b/src/insert.c
index 2f22121f7..7522a7269 100644
--- a/src/insert.c
+++ b/src/insert.c
@@ -1143,11 +1143,6 @@ void sqlite3Insert(
sqlite3VdbeAddOp1(v, OP_MustBeInt, regCols); VdbeCoverage(v);
}
- /* Cannot have triggers on a virtual table. If it were possible,
- ** this block would have to account for hidden column.
- */
- assert( !IsVirtual(pTab) );
-
/* Copy the new data already generated. */
assert( pTab->nNVCol>0 );
sqlite3VdbeAddOp3(v, OP_Copy, regRowid+1, regCols+1, pTab->nNVCol-1);