From: drh Date: Sun, 22 Dec 2019 18:23:30 +0000 (+0000) Subject: Back out the asserts of check-ins [a500893b6f64aced] and [d9c9fe9f5ad3fc91] X-Git-Tag: version-3.31.0~179 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=db1954be0a639168403ec69639b19e955fc2204d;p=thirdparty%2Fsqlite.git Back out the asserts of check-ins [a500893b6f64aced] and [d9c9fe9f5ad3fc91] as ticket [1b06916e01c82b66] demonstrates a case that refutes them. FossilOrigin-Name: ddb17d92df194337a103c561ef46ced00db5e67e4551e82de7cb5ad7f457dd5f --- diff --git a/manifest b/manifest index 603feeb264..5d6992fda0 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\sparsing\sa\sCREATE\sTABLE\sfrom\sthe\ssqlite_master\stable,\sdelete\sthe\sCHECK\nconstraints\sif\sthere\sare\sany\serrors,\ssince\sthere\smight\sotherwise\sbe\sattempts\nto\suse\sthose\sCHECK\sconstraints\sif\sPRAGMA\swritable_schema=ON\sis\sset.\nThis\sundoes\sthe\sfix\sin\scheck-in\s[ea721b34477ab8b4]\sfor\sa\smore\sgeneral\nsolution. -D 2019-12-22T18:06:49.107 +C Back\sout\sthe\sasserts\sof\scheck-ins\s[a500893b6f64aced]\sand\s[d9c9fe9f5ad3fc91]\nas\sticket\s[1b06916e01c82b66]\sdemonstrates\sa\scase\sthat\srefutes\sthem. +D 2019-12-22T18:23:30.350 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -599,7 +599,7 @@ F src/upsert.c b445315c8958d8f17ec3297d06842e61dacaad0633ccaec1e4e160de7e562212 F src/utf.c 2f0fac345c7660d5c5bd3df9e9d8d33d4c27f366bcfb09e07443064d751a0507 F src/util.c 2c92bc706bbdb1c45a25180291e7e05a56e297aa5dd7b2bcd2b1c47e8bb05b17 F src/vacuum.c 82dcec9e7b1afa980288718ad11bc499651c722d7b9f32933c4d694d91cb6ebf -F src/vdbe.c c1e35ead7ef20b5cfedd30c45b9b7eceb7fa88145bf46c11c528775318e78950 +F src/vdbe.c a5883b94f3c300c721422f2df9da531dcf02c9edc804663ebf6820600826ccde F src/vdbe.h fdbc0a11e5768a702b46ce63286f60e22e71351a29bd98b3666405e1fccc7802 F src/vdbeInt.h bd589b8b7273286858950717e0e1ec5c88b18af45079a3366dc1371865cea704 F src/vdbeapi.c 1252d80c548711e47a6d84dae88ed4e95d3fbb4e7bd0eaa1347299af7efddf02 @@ -1852,7 +1852,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 8c856404b4e98d295449a4e89a41495dc007319a8e9c35c1a763718d7c5f67e8 -R 97d0a9b1a5feca02a10db862b5a0b13b +P a982e6434cd66bfbe94d455f538bcbc4360b91572062d92acae6b77e9560e65d +R 04ec53e6dc7d44d1c22aa14f44994155 U drh -Z 7d30adc64d69bc3b030c80c2e1486537 +Z b849b4ce029d462a595dd5bf3b2ce973 diff --git a/manifest.uuid b/manifest.uuid index c082951d96..eb1aa519b0 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -a982e6434cd66bfbe94d455f538bcbc4360b91572062d92acae6b77e9560e65d \ No newline at end of file +ddb17d92df194337a103c561ef46ced00db5e67e4551e82de7cb5ad7f457dd5f \ No newline at end of file diff --git a/src/vdbe.c b/src/vdbe.c index 2b5686cd63..030c263b0d 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -2028,12 +2028,7 @@ case OP_Ge: { /* same as TK_GE, jump, in1, in3 */ if( (flags1 | flags3)&MEM_Str ){ if( (flags1 & (MEM_Int|MEM_IntReal|MEM_Real|MEM_Str))==MEM_Str ){ applyNumericAffinity(pIn1,0); - assert( flags3==pIn3->flags ); - /* testcase( flags3!=pIn3->flags ); - ** this used to be possible with pIn1==pIn3, but not since - ** the column cache was removed. The following assignment - ** is essentially a no-op. But, it provides defense-in-depth - ** in case our analysis is incorrect, so it is left in. */ + testcase( flags3!=pIn3->flags ); flags3 = pIn3->flags; } if( (flags3 & (MEM_Int|MEM_IntReal|MEM_Real|MEM_Str))==MEM_Str ){