Fix a problem that could cause an infinite loop in the fts3 'merge' command.
FossilOrigin-Name: be545f85a6ef09cc6c762f7d2ab7a0b3adf5590c3fbdc9903e6b5b5cec6e823f
This commit is contained in:
parent
22f874168a
commit
30b5db1261
@ -341,7 +341,9 @@ static int fts3SqlStmt(
|
||||
** created by merging the oldest :2 segments from absolute level :1. See
|
||||
** function sqlite3Fts3Incrmerge() for details. */
|
||||
/* 29 */ "SELECT 2 * total(1 + leaves_end_block - start_block) "
|
||||
" FROM %Q.'%q_segdir' WHERE level = ? AND idx < ?",
|
||||
" FROM (SELECT * FROM %Q.'%q_segdir' "
|
||||
" WHERE level = ? ORDER BY idx ASC LIMIT ?"
|
||||
" )",
|
||||
|
||||
/* SQL_DELETE_SEGDIR_ENTRY
|
||||
** Delete the %_segdir entry on absolute level :1 with index :2. */
|
||||
|
14
manifest
14
manifest
@ -1,9 +1,10 @@
|
||||
B 7a876209a678a34c198b54ceef9e3c041f128a14dc73357f6a57cadadaa6cf7b
|
||||
C When\scomputing\sthe\sverification\shash\sin\sspeedtest1,\sdo\snot\sinclude\sthe\nvalue\sof\sfloating\spoint\sresults\s(which\scan\svery\sin\strailing\sbits\sdepending\non\splatform)\sbut\smerely\shash\sthe\sfact\sthat\sa\sfloating\spoint\svalue\swas\nreceived.
|
||||
D 2020-06-26T17:56:43.524
|
||||
C Fix\sa\sproblem\sthat\scould\scause\san\sinfinite\sloop\sin\sthe\sfts3\s'merge'\scommand.
|
||||
D 2020-06-26T20:41:18.958
|
||||
F Makefile.in 19374a5db06c3199ec1bab71ab74a103d8abf21053c05e9389255dc58083f806
|
||||
F Makefile.msc 48f5a3fc32672c09ad73795749f6253e406a31526935fbbffd8f021108d54574
|
||||
F autoconf/Makefile.am a8d1d24affe52ebf8d7ddcf91aa973fa0316618ab95bb68c87cabf8faf527dc8
|
||||
F ext/fts3/fts3_write.c 78a447d9f2610b90eb39489721d5dc547098fab3a8b06f834ad809f9832ce93d
|
||||
F ext/lsm1/lsm_unix.c 11e0a5c19d754a4e1d93dfad06de8cc201f10f886b8e61a4c599ed34e334fc24
|
||||
F ext/misc/decimal.c c1897f624893d1c12e3c879d97ca7d1c4a36cae10d32afe632779de78c4aaa4f
|
||||
F ext/misc/ieee754.c bb6bd8e9eeeda5a7ac82839fcab5c0b8156b0532165387cc5458a97f60047b5d
|
||||
@ -13,6 +14,7 @@ F src/expr.c a3ab84399b3415f66d2d0c25f5bcd98ef465c0c07ea1f19bf2a418b1c8fcad74
|
||||
F src/shell.c.in d663152487d4bfddea0f6d21ebc2ed51575d22657a02c6828afd344bbd4651af
|
||||
F src/test1.c fe56c4bcaa2685ca9aa25d817a0ee9345e189aff4a5a71a3d8ba946c7776feb8
|
||||
F test/decimal.test 12739a01bdba4c4d79f95b323e6b67b9fad1ab6ffb56116bd2b9c81a5b19e1d9
|
||||
F test/fts3corrupt4.test 21632b7d118833739715f89cf930ee8bbcfba52877e37786dc8ca375360d578c
|
||||
F test/fuzzdata8.db 0ae860b36b79fd41cafddc9e6602358b2d5c331cf200283221e659f86e196c0c
|
||||
F test/ieee754.test b0945d12be7d255f3dfa18e2511b17ca37e0edd2b803231c52d05b86c04ab26e
|
||||
F test/speedtest1.c a8b5afe72d78ff365012aba48d3f0c579e957facb7630f765f58a6ae4656d20d
|
||||
@ -21,7 +23,7 @@ F tool/mksqlite3c.tcl f4ef476510eca4124c874a72029f1e01bc54a896b1724e8f9eef0d8bfa
|
||||
F tool/mksqlite3h.tcl 1f5e4a1dbbbc43c83cc6e74fe32c6c620502240b66c7c0f33a51378e78fc4edf
|
||||
F tool/showlocks.c 9cc5e66d4ebbf2d194f39db2527ece92077e86ae627ddd233ee48e16e8142564
|
||||
F tool/speed-check.sh 615cbdf50f1409ef3bbf9f682e396df80f49d97ed93ed3e61c8e91fae6afde58
|
||||
P d34b8ff5f8d04a75996f6ca9d3a0563c83e8e833c1eb08ac3861431f36f7bfb1
|
||||
R 36a97fda742cd4bac3ca6f8cbc587bc2
|
||||
U drh
|
||||
Z 5a87ac0a4d600052fc00b94437e0e024
|
||||
P e12225d59c63ba392db4fa8dc26700ac26b20c8b98ea5107eef0e0b5138ace87
|
||||
R 8648f88fe9cf53ead409a3c8323d8ebd
|
||||
U dan
|
||||
Z 776105c92ba8eb650aef6a142c51b9bd
|
||||
|
@ -1 +1 @@
|
||||
e12225d59c63ba392db4fa8dc26700ac26b20c8b98ea5107eef0e0b5138ace87
|
||||
be545f85a6ef09cc6c762f7d2ab7a0b3adf5590c3fbdc9903e6b5b5cec6e823f
|
@ -6123,4 +6123,16 @@ do_execsql_test 41.2 {
|
||||
SELECT offsets(t1) FROM t1 WHERE t1 MATCH 'rtree ner "json1^enable"';
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
do_execsql_test 42.1 {
|
||||
CREATE VIRTUAL TABLE f USING fts3(a, b);
|
||||
}
|
||||
do_execsql_test 42.2 {
|
||||
INSERT INTO f_segdir VALUES(0,2,1111,0,0,X'00');
|
||||
INSERT INTO f_segdir VALUES(0,3,0 ,0,0,X'00013003010200');
|
||||
}
|
||||
do_execsql_test 42.3 {
|
||||
INSERT INTO f(f) VALUES ('merge=107,2');
|
||||
}
|
||||
|
||||
finish_test
|
||||
|
Loading…
Reference in New Issue
Block a user