]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add ALWAYS() to an always true conditional that results from the
authordrh <drh@noemail.net>
Tue, 27 Aug 2019 17:28:05 +0000 (17:28 +0000)
committerdrh <drh@noemail.net>
Tue, 27 Aug 2019 17:28:05 +0000 (17:28 +0000)
previous check-in.  Add a test case for ticket [dbaf8a6820be1ece] to
supplement those already checked into TH3.

FossilOrigin-Name: aff209804722ac902c7abfde80ad2677e0f51beb2c7f28f65d51105d984a1640

manifest
manifest.uuid
src/where.c
test/in.test

index 88f2172882edc0fd37dfed332ea6b53cc2559ad2..448d1500aecd49158e8e5a803bb80833363f6cd7 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Omit\sthe\s"x\sIN\s(y)"\sto\s"x==y"\soptimization\sof\scheck-in\s[e68b427afbc82e20]\n(and\sticket\s[e39d032577df6942])\sas\sit\scauses\sdifficult\saffinity\sproblems\nas\sdemonstrated\sby\sticket\s[dbaf8a6820be1ece]\sand\sthe\soriginal\sassertion\sfault\nis\sno\slonger\sa\sfactor\sdue\sto\scountless\sother\schanges\sof\sthe\sprevious\s5\syears.
-D 2019-08-27T17:01:07.813
+C Add\sALWAYS()\sto\san\salways\strue\sconditional\sthat\sresults\sfrom\sthe\nprevious\scheck-in.\s\sAdd\sa\stest\scase\sfor\sticket\s[dbaf8a6820be1ece]\sto\nsupplement\sthose\salready\schecked\sinto\sTH3.
+D 2019-08-27T17:28:05.799
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -609,7 +609,7 @@ F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
 F src/wal.c bbd6838bd79c0a32144d482fb0b6a9d2d1a252fb3b16d5005ec30f2f80413b0d
 F src/wal.h 606292549f5a7be50b6227bd685fa76e3a4affad71bb8ac5ce4cb5c79f6a176a
 F src/walker.c d5a94907dcac990e31976be9dc769d17f6a806782593d6aec9d760ee01ec22cd
-F src/where.c 6cc2708ab9a386c0aef3fa50ed0f5bdfed22848e492960a4504eb25bdb79c8d1
+F src/where.c b33215cc1c69518b3c99a95cd8340eabd8e65213529e578659701401bfbcaa24
 F src/whereInt.h 2082fc2bd1eb66cb236a1a3c4b250e33d2bad9e43a0486a2cf9e4e211c58f3eb
 F src/wherecode.c e1131fe94c8728cbecc707f6455afbda9418896497bdca2d49a04ce6c57999f6
 F src/whereexpr.c 2757afbd5cfdbb420f9d0392e1bd5f5c0e33dee50a8c692befc7e502308e449f
@@ -1025,7 +1025,7 @@ F test/hook2.test b9ff3b8c6519fb67f33192f1afe86e7782ee4ac8
 F test/icu.test 41aa8847745a879b897a7febea0f8f9efc8e67fe8bf680589b6e07c7b0a1569a
 F test/ieee754.test 806fc0ce7f305f57e3331eaceeddcfec9339e607
 F test/imposter1.test c3f1db2d3db2c24611a6596a3fc0ffc14f1466c8
-F test/in.test 63e642e97bc22c8fd970752fb4f0b3992a957003ea87524fe69e5a700500c500
+F test/in.test 1f82966f8c3f380c0a2d5a04e4111a333c3f46d96f40fb540e022c70ace85c11
 F test/in2.test 5d4c61d17493c832f7d2d32bef785119e87bde75
 F test/in3.test 3cbf58c87f4052cee3a58b37b6389777505aa0c0
 F test/in4.test 0f77b0ff371549e6a119d0356be10bdba72258162e9701e83527a560482f5e98
@@ -1836,7 +1836,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 069c2f4c61f06211a8981abc412afcc1536ece13380b13a70aa99123f8f527cd
-R 1d1745df08bf23742595db0b843b9c5f
+P 7f5168a76a400fc2e1e40c6950470b1bfb38a0be54fc5518c17c29fdae7d8f1f
+R e976ee574a610781e94b063fc639c3bb
 U drh
-Z ead76a2ee397baa2df21935f693c9dfe
+Z 4e7308a6b92cf40c1732223a6962408d
index 40a6660d4e1c666811c4f40fffbeabb5a0490972..27ec395e672e02cbced40b3e3c845bfda6b22570 100644 (file)
@@ -1 +1 @@
-7f5168a76a400fc2e1e40c6950470b1bfb38a0be54fc5518c17c29fdae7d8f1f
\ No newline at end of file
+aff209804722ac902c7abfde80ad2677e0f51beb2c7f28f65d51105d984a1640
\ No newline at end of file
index e566e9e6898091492a220662923534a4472fe887..1eafcc87d867c47e87c3d50226c0d95e5760ba66 100644 (file)
@@ -802,7 +802,7 @@ static void constructAutomaticIndex(
         idxCols |= cMask;
         pIdx->aiColumn[n] = pTerm->u.leftColumn;
         pColl = sqlite3BinaryCompareCollSeq(pParse, pX->pLeft, pX->pRight);
-        pIdx->azColl[n] = pColl ? pColl->zName : sqlite3StrBINARY;
+        pIdx->azColl[n] = ALWAYS(pColl) ? pColl->zName : sqlite3StrBINARY;
         n++;
       }
     }
index c247f2e0700926f20822967abcaee982721b1d0c..f96dfcc11e054343fa0455d17c8f0472185518d0 100644 (file)
@@ -750,4 +750,14 @@ do_execsql_test in-17.4 {
   SELECT 1 IN (CAST('1' AS text) COLLATE nocase);
 } 0
 
+# 2019-08-27 ticket https://sqlite.org/src/info/dbaf8a6820be1ece
+# 
+do_execsql_test in-18.1 {
+  DROP TABLE IF EXISTS t0;
+  CREATE TABLE t0(c0 INT UNIQUE);
+  INSERT INTO t0(c0) VALUES (1);
+  SELECT * FROM t0 WHERE '1' IN (t0.c0);
+} {}
+
+
 finish_test