Fix another fts3 problem with processing corrupt records.
FossilOrigin-Name: 6e0ffa205312416830340ea6e621dfb1a529e5603d569941ed6263930dc28c45
This commit is contained in:
parent
5cbb442ea3
commit
b695bab055
@ -5208,10 +5208,12 @@ static int fts3EvalNearTrim(
|
|||||||
);
|
);
|
||||||
if( res ){
|
if( res ){
|
||||||
nNew = (int)(pOut - pPhrase->doclist.pList) - 1;
|
nNew = (int)(pOut - pPhrase->doclist.pList) - 1;
|
||||||
assert( pPhrase->doclist.pList[nNew]=='\0' );
|
if( nNew>=0 ){
|
||||||
assert( nNew<=pPhrase->doclist.nList && nNew>0 );
|
assert( pPhrase->doclist.pList[nNew]=='\0' );
|
||||||
memset(&pPhrase->doclist.pList[nNew], 0, pPhrase->doclist.nList - nNew);
|
assert( nNew<=pPhrase->doclist.nList && nNew>0 );
|
||||||
pPhrase->doclist.nList = nNew;
|
memset(&pPhrase->doclist.pList[nNew], 0, pPhrase->doclist.nList - nNew);
|
||||||
|
pPhrase->doclist.nList = nNew;
|
||||||
|
}
|
||||||
*paPoslist = pPhrase->doclist.pList;
|
*paPoslist = pPhrase->doclist.pList;
|
||||||
*pnToken = pPhrase->nToken;
|
*pnToken = pPhrase->nToken;
|
||||||
}
|
}
|
||||||
|
15
manifest
15
manifest
@ -1,9 +1,10 @@
|
|||||||
B 7a876209a678a34c198b54ceef9e3c041f128a14dc73357f6a57cadadaa6cf7b
|
B 7a876209a678a34c198b54ceef9e3c041f128a14dc73357f6a57cadadaa6cf7b
|
||||||
C Small\sperformance\simprovement\sin\sthe\ssqlite3_step()\sinterface.
|
C Fix\sanother\sfts3\sproblem\swith\sprocessing\scorrupt\srecords.
|
||||||
D 2020-06-29T13:12:42.266
|
D 2020-06-29T13:33:56.351
|
||||||
F Makefile.in 19374a5db06c3199ec1bab71ab74a103d8abf21053c05e9389255dc58083f806
|
F Makefile.in 19374a5db06c3199ec1bab71ab74a103d8abf21053c05e9389255dc58083f806
|
||||||
F Makefile.msc 48f5a3fc32672c09ad73795749f6253e406a31526935fbbffd8f021108d54574
|
F Makefile.msc 48f5a3fc32672c09ad73795749f6253e406a31526935fbbffd8f021108d54574
|
||||||
F autoconf/Makefile.am a8d1d24affe52ebf8d7ddcf91aa973fa0316618ab95bb68c87cabf8faf527dc8
|
F autoconf/Makefile.am a8d1d24affe52ebf8d7ddcf91aa973fa0316618ab95bb68c87cabf8faf527dc8
|
||||||
|
F ext/fts3/fts3.c 5ffabd0d13210fb9cfe1c08184201282722adfeea49cd9e8e2ae29d1fefd7fcb
|
||||||
F ext/fts3/fts3_write.c 78a447d9f2610b90eb39489721d5dc547098fab3a8b06f834ad809f9832ce93d
|
F ext/fts3/fts3_write.c 78a447d9f2610b90eb39489721d5dc547098fab3a8b06f834ad809f9832ce93d
|
||||||
F ext/lsm1/lsm_unix.c 11e0a5c19d754a4e1d93dfad06de8cc201f10f886b8e61a4c599ed34e334fc24
|
F ext/lsm1/lsm_unix.c 11e0a5c19d754a4e1d93dfad06de8cc201f10f886b8e61a4c599ed34e334fc24
|
||||||
F ext/misc/decimal.c c1897f624893d1c12e3c879d97ca7d1c4a36cae10d32afe632779de78c4aaa4f
|
F ext/misc/decimal.c c1897f624893d1c12e3c879d97ca7d1c4a36cae10d32afe632779de78c4aaa4f
|
||||||
@ -15,7 +16,7 @@ F src/shell.c.in d663152487d4bfddea0f6d21ebc2ed51575d22657a02c6828afd344bbd4651a
|
|||||||
F src/test1.c fe56c4bcaa2685ca9aa25d817a0ee9345e189aff4a5a71a3d8ba946c7776feb8
|
F src/test1.c fe56c4bcaa2685ca9aa25d817a0ee9345e189aff4a5a71a3d8ba946c7776feb8
|
||||||
F src/vdbeapi.c c1a9004ac554d8d48794d2ce5f80397f8e419fd28643a543cc1e004c7713c3ef
|
F src/vdbeapi.c c1a9004ac554d8d48794d2ce5f80397f8e419fd28643a543cc1e004c7713c3ef
|
||||||
F test/decimal.test 12739a01bdba4c4d79f95b323e6b67b9fad1ab6ffb56116bd2b9c81a5b19e1d9
|
F test/decimal.test 12739a01bdba4c4d79f95b323e6b67b9fad1ab6ffb56116bd2b9c81a5b19e1d9
|
||||||
F test/fts3corrupt4.test 21632b7d118833739715f89cf930ee8bbcfba52877e37786dc8ca375360d578c
|
F test/fts3corrupt4.test 99a3017da1f43c8dbecd1b053029ade08dfa51b94ca043abffe5d32f21cc5736
|
||||||
F test/fuzzdata8.db 0ae860b36b79fd41cafddc9e6602358b2d5c331cf200283221e659f86e196c0c
|
F test/fuzzdata8.db 0ae860b36b79fd41cafddc9e6602358b2d5c331cf200283221e659f86e196c0c
|
||||||
F test/ieee754.test b0945d12be7d255f3dfa18e2511b17ca37e0edd2b803231c52d05b86c04ab26e
|
F test/ieee754.test b0945d12be7d255f3dfa18e2511b17ca37e0edd2b803231c52d05b86c04ab26e
|
||||||
F test/speedtest1.c a8b5afe72d78ff365012aba48d3f0c579e957facb7630f765f58a6ae4656d20d
|
F test/speedtest1.c a8b5afe72d78ff365012aba48d3f0c579e957facb7630f765f58a6ae4656d20d
|
||||||
@ -24,7 +25,7 @@ F tool/mksqlite3c.tcl f4ef476510eca4124c874a72029f1e01bc54a896b1724e8f9eef0d8bfa
|
|||||||
F tool/mksqlite3h.tcl 1f5e4a1dbbbc43c83cc6e74fe32c6c620502240b66c7c0f33a51378e78fc4edf
|
F tool/mksqlite3h.tcl 1f5e4a1dbbbc43c83cc6e74fe32c6c620502240b66c7c0f33a51378e78fc4edf
|
||||||
F tool/showlocks.c 9cc5e66d4ebbf2d194f39db2527ece92077e86ae627ddd233ee48e16e8142564
|
F tool/showlocks.c 9cc5e66d4ebbf2d194f39db2527ece92077e86ae627ddd233ee48e16e8142564
|
||||||
F tool/speed-check.sh 615cbdf50f1409ef3bbf9f682e396df80f49d97ed93ed3e61c8e91fae6afde58
|
F tool/speed-check.sh 615cbdf50f1409ef3bbf9f682e396df80f49d97ed93ed3e61c8e91fae6afde58
|
||||||
P be545f85a6ef09cc6c762f7d2ab7a0b3adf5590c3fbdc9903e6b5b5cec6e823f
|
P 61400ef9f1337c77263b4d3e43a1983b0c4cf7137f066a2691768c98877035ef
|
||||||
R 9c35047475325526f2679b4ad3fed8bb
|
R b6a82b4f5a5f516b98e31add0f21e1b3
|
||||||
U drh
|
U dan
|
||||||
Z 841383906d65732bca5d23afa02166d8
|
Z 22a03abd679ba1af49f44240ae85a070
|
||||||
|
@ -1 +1 @@
|
|||||||
61400ef9f1337c77263b4d3e43a1983b0c4cf7137f066a2691768c98877035ef
|
6e0ffa205312416830340ea6e621dfb1a529e5603d569941ed6263930dc28c45
|
@ -6135,4 +6135,19 @@ do_execsql_test 42.3 {
|
|||||||
INSERT INTO f(f) VALUES ('merge=107,2');
|
INSERT INTO f(f) VALUES ('merge=107,2');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
reset_db
|
||||||
|
set saved $sqlite_fts3_enable_parentheses
|
||||||
|
set sqlite_fts3_enable_parentheses 1
|
||||||
|
do_execsql_test 43.1 {
|
||||||
|
CREATE VIRTUAL TABLE def USING fts3(xyz);
|
||||||
|
INSERT INTO def_segdir VALUES(0,0,0,0,0, X'0001310301c9000103323334050d81');
|
||||||
|
} {}
|
||||||
|
|
||||||
|
do_execsql_test 43.2 {
|
||||||
|
SELECT rowid FROM def WHERE def MATCH '1 NEAR 1'
|
||||||
|
} {1}
|
||||||
|
|
||||||
|
set sqlite_fts3_enable_parentheses $saved
|
||||||
|
|
||||||
finish_test
|
finish_test
|
||||||
|
Loading…
Reference in New Issue
Block a user