]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Change the RETURNING algorithm so that outputs accumulate in an ephemeral
authordrh <>
Thu, 4 Feb 2021 23:20:13 +0000 (23:20 +0000)
committerdrh <>
Thu, 4 Feb 2021 23:20:13 +0000 (23:20 +0000)
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

1  2 
manifest
manifest.uuid

diff --cc manifest
index cb5c4da361cef03cebb79e858c2dcae2274a114e,a65876b333f92a9a535f164e7e2797e60f4ccab4..6a7da7c071a9fb8e89ec2f0cc03a40207f229f1f
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Add\sNEVER()\sto\sa\sbranch\sthat\scheck-in\s[5d54d9fd40638138]\sapparently\smade\nunreachable.
- D 2021-02-04T13:52:34.346
 -C Remove\sdead\scode.\s\sFix\sRETURNING\sfor\sINSERT\sinto\sa\svirtual\stable.
 -D 2021-02-04T22:59:19.826
++C Change\sthe\sRETURNING\salgorithm\sso\sthat\soutputs\saccumulate\sin\san\sephemeral\ntable\suntil\sall\smodifications\shave\sbeen\scompleted,\sand\sonly\sthen\sdo\sresults\nstart\sbeing\sreturned.\s\sThis\sshould\shelp\sprevent\sproblems\swith\sinterleaved\nsqlite3_step()\scalls\son\stwo\sseparate\sDML\sstatements.\s\sIt\salso\sseems\sto\sbe\ncloser\sto\show\sPostgreSQL\sworks,\swhich\smight\sprevent\scompatibility\sproblems.
++D 2021-02-04T23:20:13.904
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -1899,7 -1899,7 +1899,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9
  F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
  F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
  F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
- P 0f34f241d37cc4f31dc657a6fc33815fa5e24298487121cb27c29118524b8ee7
- R cff545e4a39efc504a1ff4bec6444fd1
 -P 757b74ba0fd64634a365bd73955181191767ad8816a33a362e32ece250299a51
++P 5c8e6296aa9f69a092364524b716ba894f113f7f1e6024b9a2eaa01c239e65c1 dbfa38699c87ab4bf390666e411dda8d375c7b53b9b4fb131adacbf575867a72
+ R 88d822e5d89f75ce7408ba510079f31a
++T +closed dbfa38699c87ab4bf390666e411dda8d375c7b53b9b4fb131adacbf575867a72
  U drh
- Z e8f529c01cdfd85106db62be4d9db740
 -Z c8bf85f0968e78afc9da5bd08d2fe521
++Z a2b37659b7969f20723dc948c328e70a
diff --cc manifest.uuid
index 0cefd72434ca9fe803708bdb7c787000244692de,8d669b7bff06198406f832ca7b5517e30369c746..abc996f2a38ec3e5f841bbfe6b6a640d716384a8
@@@ -1,1 -1,1 +1,1 @@@
- 5c8e6296aa9f69a092364524b716ba894f113f7f1e6024b9a2eaa01c239e65c1
 -dbfa38699c87ab4bf390666e411dda8d375c7b53b9b4fb131adacbf575867a72
++c4615eb28c3dd2d473daf104f32e60d02799f3158d9d275a899c39129cc71401