From 703c208d30b533bfb8bddfdc6d90614cc62298f2 Mon Sep 17 00:00:00 2001 From: drh <> Date: Tue, 20 Sep 2022 17:21:54 +0000 Subject: [PATCH] Update the fuzz invariant checker to conform to the latest changes in dbsqlfuzz. FossilOrigin-Name: 8d8c124349d2a25200ace9a60d76751594b722468ad0c39d927a5d2c6e2464e0 --- manifest | 12 ++++++------ manifest.uuid | 2 +- test/fuzzinvariants.c | 14 ++++++++++++++ 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/manifest b/manifest index 5284efaae6..987d96a26b 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Clarify\scomments\sthat\sdescribe\squery\sflattener\srestrictions\sassociated\swith\nouter\sjoins.\s\sNo\scode\schanges. -D 2022-09-19T19:25:15.448 +C Update\sthe\sfuzz\sinvariant\schecker\sto\sconform\sto\sthe\slatest\schanges\sin\ndbsqlfuzz. +D 2022-09-20T17:21:54.866 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -1116,7 +1116,7 @@ F test/fuzzdata8.db ca9a97f401b06b0d5376139ec7e1f9e773e13345a9a2d9ccc0032cdbfede F test/fuzzer1.test 3d4c4b7e547aba5e5511a2991e3e3d07166cfbb8 F test/fuzzer2.test a85ef814ce071293bce1ad8dffa217cbbaad4c14 F test/fuzzerfault.test f64c4aef4c9e9edf1d6dc0d3f1e65dcc81e67c996403c88d14f09b74807a42bc -F test/fuzzinvariants.c c1c7ae6be4c5fe4e5b845ce2b166c17a3d0f8ef545ab0248c9990505010070da +F test/fuzzinvariants.c d7bb4a0fcc0ac344bcb72f1b86e4ae0acba5ea26dddde8160ee3db6520f10c64 F test/gcfault.test dd28c228a38976d6336a3fc42d7e5f1ad060cb8c F test/gencol1.test cc0dbb0ee116e5602e18ea7d47f2a0f76b26e09a823b7c36ef254370c2b0f3c1 F test/genesis.tcl 1e2e2e8e5cc4058549a154ff1892fe5c9de19f98 @@ -2000,8 +2000,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 8032db4ade66f70a102abb9d3a49e20620e204c45ad7a954a49d20403985bf07 -R 279e5ed5d3d08518a51dc0906b1aae25 +P 2647d73bb1876d01851f52cb3fd6af08a962ab336b6d51c160d27b1baf94f75f +R 4c12344a007c9e9bdcdbf323756fa10a U drh -Z 9a3376787d630872f605d6b2d292568c +Z 7b99665ad0fc78591cd70e35a24e34f9 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 6a2f858f62..7ec8709a6f 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -2647d73bb1876d01851f52cb3fd6af08a962ab336b6d51c160d27b1baf94f75f \ No newline at end of file +8d8c124349d2a25200ace9a60d76751594b722468ad0c39d927a5d2c6e2464e0 \ No newline at end of file diff --git a/test/fuzzinvariants.c b/test/fuzzinvariants.c index a601e7aa45..90f1fad492 100644 --- a/test/fuzzinvariants.c +++ b/test/fuzzinvariants.c @@ -129,6 +129,19 @@ int fuzz_invariant( return SQLITE_CORRUPT; } sqlite3_finalize(pCk); + if( sqlite3_strlike("%group%by%order%by%desc%",sqlite3_sql(pStmt),0)==0 ){ + /* dbsqlfuzz crash-647c162051c9b23ce091b7bbbe5125ce5f00e922 + ** Original statement is: + ** + ** SELECT a,c,d,b,'' FROM t1 GROUP BY 1 HAVING d<>345 ORDER BY a DESC; + ** + ** The values of c, d, and b are indeterminate and change when the + ** enclosed in the test query because the DESC is dropped. + ** + ** SELECT * FROM (...) WHERE "a"==0 + */ + goto not_a_fault; + } rc = sqlite3_prepare_v2(db, "SELECT 1 FROM bytecode(?1) WHERE opcode='VOpen'", -1, &pCk, 0); if( rc==SQLITE_OK ){ @@ -143,6 +156,7 @@ int fuzz_invariant( printf("invariant-error ignored due to the use of virtual tables\n"); } } +not_a_fault: sqlite3_finalize(pTestStmt); return SQLITE_OK; } -- 2.47.3