]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix an error in the OP_SeekScan opcode added by check-in [4a43430fd23f8835].
authordrh <>
Fri, 24 Mar 2023 21:24:52 +0000 (21:24 +0000)
committerdrh <>
Fri, 24 Mar 2023 21:24:52 +0000 (21:24 +0000)
Problem reported by [forum:/forumpost/8cc1dc0fe9|forum post 8cc1dc0fe9].

FossilOrigin-Name: 651a13fcd16f03e89eb6228c9f3250e25910b9bbe2637f627f65ff78f8ba2059

manifest
manifest.uuid
src/vdbe.c
test/skipscan1.test

index 810a58357a843ec2586701a0720a30dc8699f20a..af86acbc776ed7a34db3e6f4d5cde6e507c9fc0c 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sthe\shandling\sof\sindexed\sexpressions\sin\san\souter\squery\sthat\sappear\sas\ncorelated\svalues\sinside\san\saggregate\sfunction\swithin\sa\ssubquery.\n[forum:/forumpost/79cf371080|Forum\spost\s79cf371080].
-D 2023-03-24T20:35:56.400
+C Fix\san\serror\sin\sthe\sOP_SeekScan\sopcode\sadded\sby\scheck-in\s[4a43430fd23f8835].\nProblem\sreported\sby\s[forum:/forumpost/8cc1dc0fe9|forum\spost\s8cc1dc0fe9].
+D 2023-03-24T21:24:52.602
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -695,7 +695,7 @@ F src/upsert.c 5303dc6c518fa7d4b280ec65170f465c7a70b7ac2b22491598f6d0b4875b3145
 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0
 F src/util.c 3ff7bc2b48dd425b1448304bb86273b05da1621f136d51dbb9789f8803559a1f
 F src/vacuum.c 84ce7f01f8a7a08748e107a441db83bcec13970190ddcb0c9ff522adbc1c23fd
-F src/vdbe.c 0cf4c72a9e0eb614afc19c9c4ca9c8a919c97c0866934a70dac7c2f689a4edf8
+F src/vdbe.c 2bb4694bff3c1c4f52fd47e66be30278b5251d62d23b768af7c3b3a0dd7ba901
 F src/vdbe.h 73b904a6b3bb27f308c6cc287a5751ebc7f1f89456be0ed068a12b92844c6e8c
 F src/vdbeInt.h a4147a4ddf613cb1bcb555ace9e9e74a9c099d65facd88155f191b1fb4d74cfb
 F src/vdbeapi.c 40c47b1528d308a322203de21d2e0d711753257ed9771771b6129214b1d65932
@@ -1496,7 +1496,7 @@ F test/shortread1.test bb591ef20f0fd9ed26d0d12e80eee6d7ac8897a3
 F test/show_speedtest1_rtree.tcl 32e6c5f073d7426148a6936a0408f4b5b169aba5
 F test/shrink.test 2668e607dcdfa19c52828c09b69685b38da793856582ae31debf79d90c7bbbdc
 F test/sidedelete.test f0ad71abe6233e3b153100f3b8d679b19a488329
-F test/skipscan1.test 1a9972e1dc15ca3887f306d3cd9a29679afb382eca0f3539f3b746f3c2ccaf68
+F test/skipscan1.test e03ba5b977da6fd71662a4b0a668f04053bda4b187ff3214db7533e28c732279
 F test/skipscan2.test b032ed3e0ba5caa4df6c43ef22c31566aac67783bc031869155989a7ccdb5bd5
 F test/skipscan3.test ec5bab3f81c7038b43450e7b3062e04a198bdbb5
 F test/skipscan5.test 0672103fd2c8f96bd114133f356192b35ece45c794fe3677e1d9e5e3104a608e
@@ -2051,8 +2051,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 221fdcec964f8317b2c23e926cc23799615cd3b4239a8a9ff87a83588d05bc64
-R 5ccb0dc2f189cd11515b977033218bf1
+P d8259877eaa962e6f90675790d3770ef02bd1a5d86d319cd8c1834710df844c4
+R ceac5b217457e4b5c354099ee0f2a202
 U drh
-Z b958c4a96a3327f8806b22897ddc9447
+Z c8ed2eeb19fba230a018ea1c48ee7af0
 # Remove this line to create a well-formed Fossil manifest.
index 7da91c4c5326efffbfa80c1ac92c93f518a88fd8..d830bec02d47a1cce0230015ba85c9cdd193d0aa 100644 (file)
@@ -1 +1 @@
-d8259877eaa962e6f90675790d3770ef02bd1a5d86d319cd8c1834710df844c4
\ No newline at end of file
+651a13fcd16f03e89eb6228c9f3250e25910b9bbe2637f627f65ff78f8ba2059
\ No newline at end of file
index dfe8070de1c66e1821a1764afee7aa9568a18c89..4c66d555f35c4db92912c51f1e6bf8015d7d71de 100644 (file)
@@ -4973,6 +4973,7 @@ case OP_SeekScan: {          /* ncycle */
       break;
     }
     nStep--;
+    pC->cacheStatus = CACHE_STALE;
     rc = sqlite3BtreeNext(pC->uc.pCursor, 0);
     if( rc ){
       if( rc==SQLITE_DONE ){
index 94062fb17e45e08c099bfebb919bd9fc4a869415..bd5b83d34c040bdd9f5fb9d8a4858cc23056cecf 100644 (file)
@@ -419,4 +419,14 @@ do_execsql_test skipscan1-4.10 {
      AND a <= 10;
 } {3}
 
+# 2023-03-24 https://sqlite.org/forum/forumpost/8cc1dc0fe9
+#
+reset_db
+do_execsql_test skipscan1-5.0 {
+  CREATE TABLE t1(a TEXT, UNIQUE(a,a,a));
+  INSERT INTO t1 VALUES (hex(zeroblob(241))),(1),(2),(3);
+  ANALYZE;
+  SELECT max(a) FROM t1 WHERE a IN t1;
+} {3}
+
 finish_test