]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Improvements to PRAGMA integrity_check for better detection of malformed
authordrh <drh@noemail.net>
Wed, 13 Sep 2017 00:33:36 +0000 (00:33 +0000)
committerdrh <drh@noemail.net>
Wed, 13 Sep 2017 00:33:36 +0000 (00:33 +0000)
records.  Integrity_check now avoids returning SQLITE_CORRUPT on a corrupt
record.  Also includes microoptimizations that I stumbled over while working
on integrity_check.

FossilOrigin-Name: 8525c30c1d6676e51b9d9c642450aae3722c129edafdbc39b8435fcfe09b1817

1  2 
manifest
manifest.uuid
test/pragma.test

diff --cc manifest
index 1e54213d5a9ee67b7e244ef90a129af7395309b4,2141adaa03a1865f7a766cd9cddd593d210b5334..11fb3c00760e6ba30153cec79dd44a89e48c2380
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Fix\stest\sscript\scomment.\s\sNo\schanges\sto\scode.
- D 2017-09-13T00:01:26.395
 -C PRAGMA\sintegrity_check\sreturns\sSQLITE_OK\seven\sif\sit\sencounters\scorruption\nwhile\sscanning\sindexes.
 -D 2017-09-13T00:13:05.025
++C Improvements\sto\sPRAGMA\sintegrity_check\sfor\sbetter\sdetection\sof\smalformed\nrecords.\s\sIntegrity_check\snow\savoids\sreturning\sSQLITE_CORRUPT\son\sa\scorrupt\nrecord.\s\sAlso\sincludes\smicrooptimizations\sthat\sI\sstumbled\sover\swhile\sworking\non\sintegrity_check.
++D 2017-09-13T00:33:36.268
  F Makefile.in c644bbe8ebe4aae82ad6783eae6b6beea4c727b99ff97568b847ced5e2ac7afb
  F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
  F Makefile.msc 6a7a74bf60ad395098c0bd175ab054cd65ef85d7f034198d52bcc4d9e5fb4c6b
@@@ -523,9 -523,9 +523,9 @@@ F src/treeview.c 2ee4a5dada213d5ab08a74
  F src/trigger.c 48e0f7ed6749ce4d50a695e09e20ce9cf84ecabf2691852c965a51e0b620eccc
  F src/update.c 5404be9e840717323a69209190cdbc9d0d34adaedaaf1d1a1069babf2c4171c0
  F src/utf.c 810fbfebe12359f10bc2a011520a6e10879ab2a163bcb26c74768eab82ea62a5
 -F src/util.c 773843506ce694714bc96fe67c30c37015f90ef515d0e70f1f8d5c9c24088152
 +F src/util.c ece10cb34b4a62cbb3aab8d711b67e93a2765e0b81d0f72458cb801a3ac60703
  F src/vacuum.c 90839322fd5f00df9617eb21b68beda9b6e2a2937576b0d65985e4aeb1c53739
- F src/vdbe.c 82fc4553a0986a06bdd0d2b03a424e159bba5c74802fabb2841aa6cd27ccd962
+ F src/vdbe.c 0a0ef7f0759ee4c3ed5ff0c6e9641216d4b31ebb0fea9a7b5a9c4a86ce875ff3
  F src/vdbe.h d50cadf12bcf9fb99117ef392ce1ea283aa429270481426b6e8b0280c101fd97
  F src/vdbeInt.h 1fe00770144c12c4913128f35262d11527ef3284561baaab59b947a41c08d0d9
  F src/vdbeapi.c 9c670ca0dcc1cd86373aa353b747b26fe531ca5cd4331690c611d1f03842e2a1
@@@ -1096,7 -1095,7 +1096,7 @@@ F test/pcache.test c8acbedd3b6fd0f9a7ca
  F test/pcache2.test af7f3deb1a819f77a6d0d81534e97d1cf62cd442
  F test/percentile.test 4243af26b8f3f4555abe166f723715a1f74c77ff
  F test/permutations.test d911c9ba49088d22054a05dc73743f677872a92ac89288bcdeafa0ebf3f9c531
- F test/pragma.test 277488e8098e55eef32cf3188513269035cccf5a1804d505db7ac4c725fa52a5
 -F test/pragma.test 21b5a5c2e44121bb88a009b784b52c4e45b9d726c13963b1f6c38869970e0c95
++F test/pragma.test c31b5e98998c160a4c85b1e04f590655c67f2daa7f73854640cd120610e3ac15
  F test/pragma2.test e5d5c176360c321344249354c0c16aec46214c9f
  F test/pragma3.test 14c12bc5352b1e100e0b6b44f371053a81ccf8ed
  F test/pragma4.test 6e85b6eab8e61ffc9c7db59d842276674e8e3264
@@@ -1653,7 -1652,7 +1653,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9
  F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
  F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
  F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
- P 3a2793aa65727cbbf8c4678d478cf8fb02350f19ff98201934a984727368d64d
- R 1b5d97330475c133bb2adcba21536957
- U mistachkin
- Z e62aad7ac8dd39a60ddf24398d01019c
 -P 99b9140c795c0c17c4e9d2547477c9dac056edfd443f2b2bd70edecd43c49ab7
 -R a246d27aca858c3472ea60336e5e6182
++P a5a1949259a26c3330d7b1dcf38a8dd2e9b2c3af8d52f937e8537df138c9a55a 81f62e99f27dedf3dc10fa1593c4cd9fc158680867206aee853e503a0cc8df71
++R fccb8367f74d1b5d089bf2ff62c634d9
++T +closed 81f62e99f27dedf3dc10fa1593c4cd9fc158680867206aee853e503a0cc8df71
+ U drh
 -Z 6a3c45b7e13d2d307b1bb08e00187e8b
++Z 70196bf0d2abbf2ab0f5b4a6633369ee
diff --cc manifest.uuid
index 8af7c330d126e1e8adf84200db97ab8eef5774d3,4b4a5e69adc89c9840ffdf91909b9c62cc19e537..b2d34d01364b61684c7ff557cfc4ea4d0e1853e9
@@@ -1,1 -1,1 +1,1 @@@
- a5a1949259a26c3330d7b1dcf38a8dd2e9b2c3af8d52f937e8537df138c9a55a
 -81f62e99f27dedf3dc10fa1593c4cd9fc158680867206aee853e503a0cc8df71
++8525c30c1d6676e51b9d9c642450aae3722c129edafdbc39b8435fcfe09b1817
Simple merge