]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge the latest trunk enhancements into the begin-concurrent branch.
authordrh <>
Sat, 8 Jul 2023 19:00:34 +0000 (19:00 +0000)
committerdrh <>
Sat, 8 Jul 2023 19:00:34 +0000 (19:00 +0000)
FossilOrigin-Name: 3d0823c48eb8d91b747e896ee416da22f60456f14de51ff5cf31657d94c343f3

1  2 
manifest
manifest.uuid
src/btree.c
src/func.c
src/main.c
src/select.c
src/sqlite.h.in
src/sqliteInt.h
src/test1.c
src/vdbe.c
src/vdbeaux.c

diff --cc manifest
index 191605b19e3732a4d26a46806621c0e7eeaea8c3,58dc9db6f288c28e57ce6c1377801a4e892c6438..8541a7e70fa59558e9d5a37bfefbfd190e1d391c
+++ b/manifest
@@@ -1,12 -1,12 +1,12 @@@
- C Merge\srecent\strunk\senhancements\sinto\sthe\sbegin-concurrent\sbranch.
- D 2023-06-22T13:28:30.583
 -C Always\suse\sthe\s"LL"\ssuffix\son\s64-bit\sinteger\sliterals.
 -D 2023-07-08T17:42:24.748
++C Merge\sthe\slatest\strunk\senhancements\sinto\sthe\sbegin-concurrent\sbranch.
++D 2023-07-08T19:00:34.388
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
 -F Makefile.in 0f4cb3955aaff8a40ec3857ba1784bd98b69802e51eff979f874b65713b627b2
 +F Makefile.in 114bde7003dd31a813475be1fa848afd5741715a7fac56cabf3b081035137626
  F Makefile.linux-gcc f609543700659711fbd230eced1f01353117621dccae7b9fb70daa64236c5241
  F Makefile.msc 7248d860f71ab164b4cec3c415e6cc1bd9fee860c370d65bd8bb49e9572521e2
- F README.md 8ff80689b9cb9f6e9b842edf31a3358ff53bc538c351799e03dd3e5455e637e5
+ F README.md c1c4218efcc4071a6e26db2b517fdbc1035696a29b370edd655faddbef02b224
  F VERSION c6366dc72582d3144ce87b013cc35fe48d62f6d07d5be0c9716ea33c862144aa
  F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
  F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
@@@ -533,11 -528,11 +533,11 @@@ F ext/wasm/example_extra_init.c 2347cd6
  F ext/wasm/fiddle.make dbe36b90b8907ae28ecb9c0e9fd8389dbdaecf117ea4fb2ea33864bdfa498a94
  F ext/wasm/fiddle/emscripten.css 3d253a6fdb8983a2ac983855bfbdd4b6fa1ff267c28d69513dd6ef1f289ada3f
  F ext/wasm/fiddle/fiddle-worker.js 163d6139a93fab4bcb72064923df050d4e7c0ff0d8aa061ce8776a6e75da8a10
 +F ext/wasm/fiddle/fiddle.html 550c5aafce40bd218de9bf26192749f69f9b10bc379423ecd2e162bcef885c08
  F ext/wasm/fiddle/fiddle.js 974b995119ac443685d7d94d3b3c58c6a36540e9eb3fed7069d5653284071715
 -F ext/wasm/fiddle/index.html 5daf54e8f3d7777cbb1ca4f93affe28858dbfff25841cb4ab81d694efed28ec2
  F ext/wasm/index-dist.html 22379774f0ad4edcaaa8cf9c674c82e794cc557719a8addabed74eb8069d412e
  F ext/wasm/index.html dd900891844caebd9cadbddd704f66bd841d7c12fd69ce5af490e2c10fb49f45
- F ext/wasm/jaccwabyt/jaccwabyt.js 8287c0537fa0750414edbe75ce64668a81c8716df5ec4c3e6bb4f11bd1c36031
+ F ext/wasm/jaccwabyt/jaccwabyt.js 1264710db3cfbcb6887d95665b7aeba60c1126eaef789ca4cf1a4a17d5bc7f54
  F ext/wasm/jaccwabyt/jaccwabyt.md 37911f00db12cbcca73aa1ed72594430365f30aafae2fa9c886961de74e5e0eb
  F ext/wasm/module-symbols.html 841de62fc198988b8330e238c260e70ec93028b096e1a1234db31b187a899d10
  F ext/wasm/scratchpad-wasmfs-main.html 20cf6f1a8f368e70d01e8c17200e3eaa90f1c8e1029186d836d14b83845fbe06
@@@ -579,12 -574,12 +579,12 @@@ F src/analyze.c d4cc28738c29e009640ec20
  F src/attach.c cc9d00d30da916ff656038211410ccf04ed784b7564639b9b61d1839ed69fd39
  F src/auth.c 19b7ccacae3dfba23fc6f1d0af68134fa216e9040e53b0681b4715445ea030b4
  F src/backup.c 5c97e8023aab1ce14a42387eb3ae00ba5a0644569e3476f38661fa6f824c3523
 -F src/bitvec.c 9eac5f42c11914d5ef00a75605bb205e934f435c579687f985f1f8b0995c8645
 +F src/bitvec.c 501daeef838fa82a9fb53540d72f29e3d9172c8867f1e19f94f681e2e20b966e
  F src/btmutex.c 79a43670447eacc651519a429f6ece9fd638563cf95b469d6891185ddae2b522
- F src/btree.c 15a5cba9d9833f0bb55735a9330fd4eb55e41eba5d40191bcfddf18c002e90c4
 -F src/btree.c c9400cc1509116a29120dc06feb00ca7e26b5a4a6dba80758b1ba109d8fce5a4
 -F src/btree.h aa354b9bad4120af71e214666b35132712b8f2ec11869cb2315c52c81fad45cc
 -F src/btreeInt.h 3b4eff7155c0cea6971dc51f62e3529934a15a6640ec607dd42a767e379cb3a9
 -F src/build.c a8ae3b32d9aa9bbd2c0e97d7c0dd80def9fbca408425de1608f57ee6f47f45f4
++F src/btree.c e4f216d52c12dafc76b5c2fa3545e390d07e1fdb888384b71ee8b01083e8609b
 +F src/btree.h 77a092acf63526827e74e88d0480123212d079593a841ff1fe85507adf256ef6
 +F src/btreeInt.h c490cf859feeec542d60e6df7976dc8f99a82c587a8a96e432be66b3a08fc83c
 +F src/build.c 84238806b9a9ca5373ccaea65a86129717d023bc582919f7f5a91d1b92e1a4c1
  F src/callback.c db3a45e376deff6a16c0058163fe0ae2b73a2945f3f408ca32cf74960b28d490
  F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
  F src/ctime.c 20507cc0b0a6c19cd882fcd0eaeda32ae6a4229fb4b024cfdf3183043d9b703d
@@@ -592,11 -587,11 +592,11 @@@ F src/date.c f73f203b3877cef866c60ab402
  F src/dbpage.c f3eea5f7ec47e09ee7da40f42b25092ecbe961fc59566b8e5f705f34335b2387
  F src/dbstat.c ec92074baa61d883de58c945162d9e666c13cd7cf3a23bc38b4d1c4d0b2c2bef
  F src/delete.c cd5f5cd06ed0b6a882ec1a8c2a0d73b3cecb28479ad19e9931c4706c5e2182be
- F src/expr.c 36f6a47c8a2c20ec3c267a60fc598857876edd60af0cb40caf7b69b651fd73bf
+ F src/expr.c 8d1656b65e26af3e34f78e947ac423f0d20c214ed25a67486e433bf16ca6b543
  F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
  F src/fkey.c a7fcbf7e66d14dbb73cf49f31489ebf66d0e6006c62b95246924a3bae9f37b36
- F src/func.c cc4f5b77c1c7f086e5087f087a5e97c58d4cd71e8f4a4b381b231348c52878ca
- F src/global.c bd0892ade7289f6e20bff44c07d06371f2ff9b53cea359e7854b9b72f65adc30
 -F src/func.c cffa6edb4aa4865d8e237022399ba9c2b22fd11e5581efba7c5b524b525952ca
++F src/func.c 84c33702ee0e876d224f54bda48ac8e13dab4125162c14be81c58cb814e058fd
+ F src/global.c 29f56a330ed9d1b5cd9b79ac0ca36f97ac3afc730ff8bfa987b0db9e559d684d
  F src/hash.c 9ee4269fb1d6632a6fecfb9479c93a1f29271bddbbaf215dd60420bcb80c7220
  F src/hash.h 3340ab6e1d13e725571d7cee6d3e3135f0779a7d8e76a9ce0a85971fa3953c51
  F src/hwtime.h f9c2dfb84dce7acf95ce6d289e46f5f9d3d1afd328e53da8f8e9008e3b3caae6
@@@ -605,7 -600,7 +605,7 @@@ F src/insert.c 3f0a94082d978bbdd33c38fe
  F src/json.c 14c474fb1249a46eb44e878e2361f36abfe686b134039b0d1883d93d61505b4a
  F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa
  F src/loadext.c 176d6b2cb18a6ad73b133db17f6fc351c4d9a2d510deebdb76c22bde9cfd1465
- F src/main.c f39fc7d716efd7cce2290a65bd781998fb1a021fb561a1c057d348fc231f58cd
 -F src/main.c 512b1d45bc556edf4471a845afb7ba79e64bd5b832ab222dc195c469534cd002
++F src/main.c 429a1a25752edd6afa97de4b8ac10b98f557bbd93f01e39fcd2fa2204a8f54bb
  F src/malloc.c 47b82c5daad557d9b963e3873e99c22570fb470719082c6658bf64e3012f7d23
  F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
  F src/mem1.c 3bb59158c38e05f6270e761a9f435bf19827a264c13d1631c58b84bdc96d73b2
@@@ -636,23 -631,23 +636,23 @@@ F src/pcache.c 4cd4a0043167da9ba7e19b4d
  F src/pcache.h 1497ce1b823cf00094bb0cf3bac37b345937e6f910890c626b16512316d3abf5
  F src/pcache1.c 602acb23c471bb8d557a6f0083cc2be641d6cafcafa19e481eba7ef4c9ca0f00
  F src/pragma.c 37b8fb02d090262280c86e1e2654bf59d8dbfbfe8dc6733f2b968a11374c095a
 -F src/pragma.h e690a356c18e98414d2e870ea791c1be1545a714ba623719deb63f7f226d8bb7
 +F src/pragma.h 1f421360eed1a7721e8c521463df8519a7c8d0d5893ebd9dbfe0dba8de996f8c
  F src/prepare.c d6c4354f8ea0dc06962fbabc4b68c4471a45276a2918c929be00f9f537f69eb1
- F src/printf.c b9320cdbeca0b336c3f139fd36dd121e4167dd62b35fbe9ccaa9bab44c0af38d
+ F src/printf.c 84b7b4b647f336934a5ab2e7f0c52555833cc0778d2d60e016cca52ee8c6cd8f
 -F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
 +F src/random.c a3e70f8515721ff24d2c0e6afd83923e8faab5ab79ececea4c1bf9fe4049fbb2
  F src/resolve.c 37953a5f36c60bea413c3c04efcd433b6177009f508ef2ace0494728912fe2e9
  F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
- F src/select.c 411e67407ac2219c99398879caa5f26ad75c91dd1a9bc55bc1c7c9f465916e9f
- F src/shell.c.in bdd1fdfc77a67651cdc5a158bc9107cf3c2cf3ddb62d7a4da06c6eaaa5e72037
- F src/sqlite.h.in 2d9fe0df0a6943aaf2d26358bef08d37bb266bbec649b46c42e064ca9d57fd46
 -F src/select.c 3ab1186290a311a8ceed1286c0e286209f7fe97b2d02c7593258004ce295dd88
++F src/select.c 8425355cfbe559fb00a1c7f251daf629cb433c751efc550af5305551300d1462
+ F src/shell.c.in d320d8a13636de06d777cc1eab981caca304e175464e98183cf4ea68d93db818
 -F src/sqlite.h.in f999ef3642f381d69679b2516b430dbcb6c5a2a951b7f5e43dc4751b474a5774
++F src/sqlite.h.in 0b25130ef3c980630ad32e022c5671c371dc75765358a98d915e1b8aa7896e2e
  F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
  F src/sqlite3ext.h da473ce2b3d0ae407a6300c4a164589b9a6bfdbec9462688a8593ff16f3bb6e4
- F src/sqliteInt.h 63694b09d3effe63f8d09909f7c067960dc79bfa253aec613f1ce7e1506393b0
 -F src/sqliteInt.h 002a6c3e24752d123468c5d948a80e2cd4acf01badce268f9dd98b581cd7bb96
++F src/sqliteInt.h ac8a68ffb71117a3abbf603b731edb0ecf8f545ae48d867ad88e33334a29df3e
  F src/sqliteLimit.h 33b1c9baba578d34efe7dfdb43193b366111cdf41476b1e82699e14c11ee1fb6
  F src/status.c 160c445d7d28c984a0eae38c144f6419311ed3eace59b44ac6dafc20db4af749
  F src/table.c 0f141b58a16de7e2fbe81c308379e7279f4c6b50eb08efeec5892794a0ba30d1
  F src/tclsqlite.c ecbc3c99c0d0c3ed122a913f143026c26d38d57f33e06bb71185dd5c1efe37cd
- F src/test1.c dd1cf6dbb2507e735582d011c8d7e9f55b649b2d8cff4f7b818405c2cc435140
 -F src/test1.c 9111b12427b3b94429aff68bbcf5b125ae70438f6ce2f3f033e2a69626ec26c9
++F src/test1.c df075b328166df5a0e59428033d85a4a83c614062641b10fd51e7cbbcf9810f7
  F src/test2.c 827446e259a3b7ab949da1542953edda7b5117982576d3e6f1c24a0dd20a5cef
  F src/test3.c e5178558c41ff53236ae0271e9acb3d6885a94981d2eb939536ee6474598840e
  F src/test4.c 4533b76419e7feb41b40582554663ed3cd77aaa54e135cf76b3205098cd6e664
@@@ -707,18 -702,18 +707,18 @@@ F src/threads.c 4ae07fa022a3dc7c5beb373
  F src/tokenize.c 0fb405f9adf3f757c26bfc1ae6d58ac5dccbb918917ba9e5ef0e6673a06563d3
  F src/treeview.c 1d52fbc4e97161e65858d36e3424ea6e3fc045dd8a679c82b4b9593dc30de3bd
  F src/trigger.c ad6ab9452715fa9a8075442e15196022275b414b9141b566af8cdb7a1605f2b0
 -F src/update.c 0aa36561167a7c40d01163238c297297962f31a15a8d742216b3c37cdf25f731
 +F src/update.c 2dbef4481774a43891fbf217e394cf229a3c2d6a926ad47bb2836536cc521f11
  F src/upsert.c 5303dc6c518fa7d4b280ec65170f465c7a70b7ac2b22491598f6d0b4875b3145
  F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0
- F src/util.c 6f9d2f278dcc8d41c618980cd3cfe88e1bafc0626209b917c6773d8202d29ef6
+ F src/util.c fea6fffdee3cdae917a66b70deec59d4f238057cfd6de623d15cf990c196940d
 -F src/vacuum.c 604fcdaebe76f3497c855afcbf91b8fa5046b32de3045bab89cc008d68e40104
 -F src/vdbe.c 74282a947234513872a83b0bab1b8c644ece64b3e27b053ef17677c8ff9c81e0
 +F src/vacuum.c b1dd6d73869229b6e08bac910ac011dc9da42e3120ec2b7241accc5a752bd419
- F src/vdbe.c 786a0cc7956a601720d246164a9c19322bc1e950aad412958d365e3632d68908
++F src/vdbe.c e83a0e938378b43d37d3a9a17ed9922f5a29f09120d75d83269808c2440a60c0
  F src/vdbe.h 41485521f68e9437fdb7ec4a90f9d86ab294e9bb8281e33b235915e29122cfc0
  F src/vdbeInt.h 7bd49eef8f89c1a271fbf12d80a206bf56c876814c5fc6bee340f4e1907095ae
  F src/vdbeapi.c de9703f8705afc393cc2864669ce28cf9516983c8331d59aa2b978de01634365
- F src/vdbeaux.c 736c7dcf8c99dcc03c6931bde5913cee29bf83a755984778ff1a600c05d3a7c5
 -F src/vdbeaux.c b5e3f7e158518b4eca6f166ac43900640a3fe9735c710e12bfa119af21059339
++F src/vdbeaux.c 7b6d7aa0667a381c4aa1414b531dad7a8480e08cad1cb19c6fd38908c1790036
  F src/vdbeblob.c 2516697b3ee8154eb8915f29466fb5d4f1ae39ee8b755ea909cefaf57ec5e2ce
- F src/vdbemem.c 710119a8e35e47813681c48703d65a80ba22792192de90bc51dc0d6366f2a79e
+ F src/vdbemem.c cf4a1556dd5b18c071cf7c243373c29ce752eb516022e3ad49ba72f08b785033
  F src/vdbesort.c 0d40dca073c94e158ead752ef4225f4fee22dee84145e8c00ca2309afb489015
  F src/vdbetrace.c fe0bc29ebd4e02c8bc5c1945f1d2e6be5927ec12c06d89b03ef2a4def34bf823
  F src/vdbevtab.c aae4bd769410eb7e1d02c42613eec961d514459b1c3c1c63cfc84e92a137daac
@@@ -2058,8 -2043,8 +2060,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 804bb138f536f64bfa397eed5e7223e34945cff97894633b26fa677818bf6fcd 2e9734c2335d8c06fedc9f4cca02baaf326f7fa276bd464f3214f383715a48d6
- R 789504a3f6529dcfd2d246a7de8c676e
 -P beab3c98639be531744e60440223bb9ee76bc15234aff05e5efb273c8241dfd8
 -R 0aeac1606c7bbc75dfae0a73d28601e5
++P 5bd26fea6a0720897a6c8384249b1e41c1838ef98f8f48d463d0cdde631477b9 07d95ed60f0a17ea13b4bc19c2ab2ec9052fedd27c9e1e57a1ec6e3a6470e5b7
++R 3e29277fba0365ce92ee79fcab44a2c3
  U drh
- Z 8b5134b065a15fc23288205486a9ea8c
 -Z 7fe2cdb685f595b3ff5ea313f1ff0511
++Z 29504e50507c1743d577a388292910cf
  # Remove this line to create a well-formed Fossil manifest.
diff --cc manifest.uuid
index 39e6101c9d502a3fe25de1b8a3e2a3ee37096192,1161b8bd7fab387eb0cda42a3ebf1531c0314345..a73be8956b9e4c84f0c3f4bd4bacc0500daf96f2
@@@ -1,1 -1,1 +1,1 @@@
- 5bd26fea6a0720897a6c8384249b1e41c1838ef98f8f48d463d0cdde631477b9
 -07d95ed60f0a17ea13b4bc19c2ab2ec9052fedd27c9e1e57a1ec6e3a6470e5b7
++3d0823c48eb8d91b747e896ee416da22f60456f14de51ff5cf31657d94c343f3
diff --cc src/btree.c
index eb54be4547f265418174f6263bbd2d966b4aacb2,643d1c42de0a97999a0313eb90e1175a5394182f..5fae16a3f7422497008af97f65f124dc4cc7fe1d
@@@ -5792,13 -5340,13 +5792,14 @@@ static int moveToChild(BtCursor *pCur, 
    pCur->apPage[pCur->iPage] = pCur->pPage;
    pCur->ix = 0;
    pCur->iPage++;
 -  rc = getAndInitPage(pCur->pBt, newPgno, &pCur->pPage, pCur->curPagerFlags);
 -  assert( pCur->pPage!=0 || rc!=SQLITE_OK );
 -  if( rc==SQLITE_OK
 -   && (pCur->pPage->nCell<1 || pCur->pPage->intKey!=pCur->curIntKey)
 -  ){
 -    releasePage(pCur->pPage);
 -    rc = SQLITE_CORRUPT_PGNO(newPgno);
 +  rc = getAndInitPage(pBt, newPgno, &pCur->pPage, pCur->curPagerFlags);
 +  if( rc==SQLITE_OK ){
++    assert( pCur->pPage!=0 );
 +    setMempageRoot(pCur->pPage, pCur->pgnoRoot);
 +    if( pCur->pPage->nCell<1 || pCur->pPage->intKey!=pCur->curIntKey ){
 +      releasePage(pCur->pPage);
 +      rc = SQLITE_CORRUPT_PGNO(newPgno);
 +    }
    }
    if( rc ){
      pCur->pPage = pCur->apPage[--pCur->iPage];
diff --cc src/func.c
Simple merge
diff --cc src/main.c
Simple merge
diff --cc src/select.c
Simple merge
diff --cc src/sqlite.h.in
Simple merge
diff --cc src/sqliteInt.h
index eda006cccfc8e3cf22d8b3a9f0c367d35692bf28,770aa707188ce575e5cb0e4c21ec9721588a1653..c65ffd862771173034bbcca4cf2bb959dd6b7e3a
@@@ -1237,8 -1238,8 +1238,9 @@@ typedef struct DblDbl DblDbl
  typedef struct Schema Schema;
  typedef struct Expr Expr;
  typedef struct ExprList ExprList;
 +typedef struct FastPrng FastPrng;
  typedef struct FKey FKey;
+ typedef struct FpDecode FpDecode;
  typedef struct FuncDestructor FuncDestructor;
  typedef struct FuncDef FuncDef;
  typedef struct FuncDefHash FuncDefHash;
diff --cc src/test1.c
Simple merge
diff --cc src/vdbe.c
Simple merge
diff --cc src/vdbeaux.c
Simple merge