]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add the BTREE_HINT_TABLECURSOR cursor-hint. This is not currently used by stock SQLite. master
authordan <Dan Kennedy>
Mon, 22 Jun 2026 11:02:28 +0000 (11:02 +0000)
committerdan <Dan Kennedy>
Mon, 22 Jun 2026 11:02:28 +0000 (11:02 +0000)
FossilOrigin-Name: 35b3ff4007fc1abd36233a6b3b75bb6a123edc062f36437247c3dfe779868b70

1  2 
manifest
manifest.uuid
src/btree.h
test/permutations.test

diff --cc manifest
index 681084b20f2c41a014edf7d02a53f2f1c1c5b8a2,8d04d6dbc6e7ee152007960838bc64fdab8aff04..6b6af0e084d7365c86350394bdd7f2db0f682aef
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Correct\stest\sfrom\s[96a48a15760a]\s-\sthat\sjournal\swas\sindeed\scorrupt,\sbut\snot\sin\sthe\sintended\smanner.\sAdd\sa\sverification\sthat\sthe\sbad\sjournal\sgets\sreplaced\safter\sa\swrite.
- D 2026-06-21T11:38:05.728
 -C After\sopening\sa\snon-covering\sindex\scursor,\spass\sthe\scorresponding\stable\scursor\sto\sthe\simplementation\svia\ssqlite3BtreeCursorHint().
 -D 2026-06-16T18:06:46.153
++C Add\sthe\sBTREE_HINT_TABLECURSOR\scursor-hint.\sThis\sis\snot\scurrently\sused\sby\sstock\sSQLite.
++D 2026-06-22T11:02:28.169
  F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@@ -677,10 -677,10 +677,10 @@@ F src/auth.c b5ece4e1edccad082c0332fa00
  F src/backup.c 6ebe22ccbedfcb92423833992130e8d65824be4e6599c3a03f540ab38fc7d13c
  F src/bitvec.c e242d4496774dfc88fa278177dd23b607dce369ccafb3f61b41638eea2c9b399
  F src/btmutex.c 30dada73a819a1ef5b7583786370dce1842e12e1ad941e4d05ac29695528daea
- F src/btree.c c9b13797b0b68e0c057ec796976b1ab1e8b4e766d1a7c7f919b2d8a1d2193a80
- F src/btree.h e823c46d87f63d904d735a24b76146d19f51f04445ea561f71cc3382fd1307f0
- F src/btreeInt.h 9c0f9ea5c9b5f4dcaea18111d43efe95f2ac276cd86d770dce10fd99ccc93886
+ F src/btree.c 515cf62220ceb483ba9a31ebb3d7565ea9d63ffc3d61bb974b2815fef393df0e
 -F src/btree.h 2886ff5e136ed6472edc77515896892e3f9105436f191d95320a15d967ac4889
++F src/btree.h d19e634e0fafd63d13b198df3a6306317a88a0d3daef7af8686e24a014933837
+ F src/btreeInt.h 4f512ad31083216b6789762d4c345b73367985d3b39421c9ba7c0902d09fb38b
 -F src/build.c 866e584cdf40fbc83f530af9fd4d0991582a6fdbd8a9911b7cdbbea5f26a4a9e
 +F src/build.c 09946336c3011c2ae2faccdf04e33336e1cd51fd836651be0cd7eb5814f7f6a0
  F src/callback.c 3605bbf02bd7ed46c79cd48346db4a32fc51d67624400539c0532f4eead804ad
  F src/carray.c 3efe3982d5fb323334c29328a4e189ccaef6b95612a6084ad5fa124fd5db1179
  F src/complete.c f216b970ce99c5a657556cf1f17e7ddd494515d3beb63df426bf59ff43bd3d9a
@@@ -804,11 -804,11 +804,11 @@@ F src/upsert.c dd9f0fcccbfb4f20e1026a21
  F src/utf.c 7267c3fb9e2467020507601af3354c2446c61f444387e094c779dccd5ca62165
  F src/util.c 98cf12c8ba65623a76c1eb6e6afa98ff40107c9919bf79af42f4bfc70e654232
  F src/vacuum.c d3d35d8ae893d419ade5fa196d761a83bddcbb62137a1a157ae751ef38b26e82
- F src/vdbe.c 39658ee12b9d6bf5fc546e1ede20b307d86d9e988ae709c9b461249a8312513d
+ F src/vdbe.c 6397694fa506aa1841dc8bb6a17c514aa602a4ad2515024fcd5880558c1ef57f
  F src/vdbe.h 70e862ac8a11b590f8c1eaac17a0078429d42bc4ea3f757a9af0f451dd966a71
  F src/vdbeInt.h c31ba4dc8d280c2b1dc89c6fcee68f2555e3813ab34279552c20b964c0e338b1
 -F src/vdbeapi.c 6cdcbe5c7afa754c998e73d2d5d2805556268362914b952811bdfb9c78a37cf1
 -F src/vdbeaux.c bd3aaf77593a5590f617ce173e8677a21eca18522eadc1c4bc81b53f6d1c7e19
 +F src/vdbeapi.c 15c55a4be8edc06055502e15f60f444c8fc5cb6134e38b8486742e89670d5e8f
 +F src/vdbeaux.c a052c43fcf342651f655e6771003c175d49b237a9473c3c4d79d44725f494dae
  F src/vdbeblob.c b3f0640db9642fbdc88bd6ebcc83d6009514cafc98f062f675f2c8d505d82692
  F src/vdbemem.c 6e7ad67507c9a8e625b46256a9c003929331d6a27b99bbe139b8f0dab636e1f2
  F src/vdbesort.c b69220f4ea9ffea5fdef34d968c60305444eea909252a81933b54c296d9cca70
@@@ -819,11 -819,11 +819,11 @@@ F src/vxworks.h 9d18819c5235b49c2340a8a
  F src/wal.c abfd99239725a258af4f733681b24dd7a9ee298babe389a36d29c197e2443ebf
  F src/wal.h ba252daaa94f889f4b2c17c027e823d9be47ce39da1d3799886bbd51f0490452
  F src/walker.c d5006d6b005e4ea7302ad390957a8d41ed83faa177e412f89bc5600a7462a014
- F src/where.c 33e4a6558ee69f33d6a4e7069e3a40a55959d14e5653a9a83926e70305d471f3
+ F src/where.c e76636ee3a58a3fc84e6a0362c69dd61234c24a77cfc9219b8db8cc2278ae5b7
  F src/whereInt.h 8d94cb116c9e06205c3d5ac87af065fc044f8cf08bfdccd94b6ea1c1308e65da
  F src/wherecode.c bc39ccbe3648f01157038b16cc55bdbff128590972b7185521b5526dc2815765
 -F src/whereexpr.c a1e22cf9f6cb59770d9652c757dcf1924078ad2d48a9da89e254be9327677465
 -F src/window.c c0a38cd32473e8e8e7bc435039f914a36ca42465506dc491c65870c01ddac9fb
 +F src/whereexpr.c 00e778c829a6ac6bf2bb8899cd1e39ccc48670d665b5891e99632180a2768a15
 +F src/window.c 0d7dacdf2e84c6ee8ff498d5cc881dd245fcb2f14f6c5976e97e112ce96e90dc
  F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
  F test/affinity2.test 4d7a34d328e58ca2a2d78fd76c27614a41ca7ddf4312ded9c68c04f430b3b47d
  F test/affinity3.test 9b7d1133e11d5edd7805573c4ab6f3ba73b0b74a1f280d5b130d4bf3506a93ff
@@@ -1513,7 -1513,7 +1513,7 @@@ F test/pcache.test c8acbedd3b6fd0f9a7ca
  F test/pcache2.test 8a801d2b8e4b0ebb99701f026a67a9e84634c8aa24799a842c44003b93250da1
  F test/pendingrace.test e99efc5ab3584da3dfc8cd6a0ec4e5a42214820574f5ea24ee93f1d84655f463
  F test/percentile.test fd78896fa882fa4fbf693640097859721f3629926c2ccf804af5bcb7001fd35b
--F test/permutations.test 99c5e11130387da85c216a839412b882a779596f3f2e0ecb7e0703c564182cdb
++F test/permutations.test bebee370ac995125bbc1b44e3781f7d329a99d341326cc77c1f8f87ff781c653
  F test/pg_common.tcl 3b27542224db1e713ae387459b5d117c836a5f6e328846922993b6d2b7640d9f
  F test/pragma.test 7d07b7bb76e273215d6a20c4f83c3062cc28976c737ccb70a686025801e86c8f
  F test/pragma2.test e5d5c176360c321344249354c0c16aec46214c9f
@@@ -2208,8 -2208,11 +2208,9 @@@ F tool/warnings-clang.sh bbf6a1e685e534
  F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
  F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
  F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
- P bd6bbd0e84226c90d864c28ac4d6acd908c4f06bfe63dcfd6fa6b8d17105b338
- R 2de10755edf1cb1f73f8df94023358e4
- U stephan
- Z ab5ef0b4ce9e85fe36d53f715231baac
 -P 3f3fb9b638f59ad982beafb7c117f24ddd3da612e62c862510805fa672ffae06
 -R 237ea409b5f47403026e3eec6a17c3ca
 -T *branch * cursor-hint-tblcsr
 -T *sym-cursor-hint-tblcsr *
 -T -sym-trunk *
++P c9171221160f241b450d425f41bb53b42362dccfad4c3fdf64dd5c3562ed4096 d48c6d2dcd50128f35bba8931371e708d24b63f2ea7a5988af8864d18ef5d14e
++R ac3180d079383592c198cf1b45b910ff
++T +closed d48c6d2dcd50128f35bba8931371e708d24b63f2ea7a5988af8864d18ef5d14e
+ U dan
 -Z 8b75c7202ab01c7d8eacb5d6b04a0202
++Z 136a44434452d883960fef6aa0671265
  # Remove this line to create a well-formed Fossil manifest.
diff --cc manifest.uuid
index 0da7bdc61f69f464e1512864db1e8e06f8f8ee98,e5e445823a68746231ca02b6aeebc625aff44ddb..1af266994ab298f68da378b3d74c0d2fc6f74b8c
@@@ -1,1 -1,1 +1,1 @@@
- c9171221160f241b450d425f41bb53b42362dccfad4c3fdf64dd5c3562ed4096
 -d48c6d2dcd50128f35bba8931371e708d24b63f2ea7a5988af8864d18ef5d14e
++35b3ff4007fc1abd36233a6b3b75bb6a123edc062f36437247c3dfe779868b70
diff --cc src/btree.h
index 96f4c4c607fdd1303bd4ce91cb58daa78267da61,5139dfad5d3e861285cc673534c7c658548d952e..6b2ff6e3fbf7d8613f67e1a6565474148da6cd81
@@@ -182,6 -182,6 +182,12 @@@ int sqlite3BtreeNewDb(Btree *p)
  **     implementations with limits on what needs to be prefetched and thereby
  **     reduce network bandwidth.
  **
++** BTREE_HINT_TABLECURSOR  (arguments: BtCursor*)
++**
++**     This hint is invoked on a non-covering index cursor soon after it
++**     is opened. The only argument is a pointer to the table cursor used to
++**     obtain non-covered fields from the database.
++**
  ** Note that BTREE_HINT_FLAGS with BTREE_BULKLOAD is the only hint used by
  ** standard SQLite.  The other hints are provided for extensions that use
  ** the SQLite parser and code generator but substitute their own storage
index 6acd9a2391fd37f74e30272cfdbe623815f541e5,6acd9a2391fd37f74e30272cfdbe623815f541e5..617d760871c47d37c5a69e334bb6b32765f79a5a
@@@ -142,7 -142,7 +142,7 @@@ set allquicktests [test_set $alltests -
  
    writecrash.test view3.test 
    fts5dlidx.test fts5ac.test fts4merge3.test fts5prefix.test
--  fts5bigtok2.test
++  fts5bigtok2.test fts5secure7.test
    sessionB.test
  }]
  if {[info exists ::env(QUICKTEST_INCLUDE)]} {