dan
95fdb63b7f
Avoid an assert() failure and an undefined left-shift operation in the fts3 snippet() function that could occur if the database was corrupt.
...
FossilOrigin-Name: d5250db6322103326f0d5782ba049996d9ce8784f9e53a3112fb6f09f888f1c3
2019-02-28 13:41:35 +00:00
dan
f2e5c98613
Fix a couple of assert() statements in fts3 that can be false if the database is corrupt.
...
FossilOrigin-Name: 84162af521f29df8a186163fbdef9856e1aa8aba78e74d7df0ba2cc83bb86240
2019-02-23 20:48:41 +00:00
drh
b43ac0021f
Fix an assert() that might not be true if the %_segdir table of FTS3 contains
...
corrupt entries.
FossilOrigin-Name: a6509ca3dc2602c7d0376230ee63c1bb4c4066f007e77e9ac20d8eee966e5e13
2019-02-18 12:16:03 +00:00
dan
2fa619a3a8
Change a few assert() statements in fts3 that might fail if the database is corrupt.
...
FossilOrigin-Name: db74a56af73d92b7a9d43ceda7e4540915c580c68a0266b4ddefb9e0d5cbcbeb
2019-02-09 19:23:54 +00:00
dan
41fc545147
Fix an assertion failure in fts3 triggered by a corrupt database.
...
FossilOrigin-Name: 560ebd4269fad07b8e988d070454017123593eb6762597d08e8c32d7b4fb92ac
2019-02-03 07:46:07 +00:00
drh
3f4f6823ac
Fix harmless compiler warnings.
...
FossilOrigin-Name: 9a93c68a7673bda2e6c308d3b2798d0fb12fde399996cae24b1f0d5864adf355
2019-01-29 16:54:31 +00:00
dan
c7def600bd
Fix a buffer overread in fts3 that could occur when accessing a corrupt database.
...
FossilOrigin-Name: a9faf9033910927c74553e66c474d84ed3386f263cef3eec299e25d8306f410d
2019-01-28 16:50:42 +00:00
dan
6c43dbad98
Do not assume that text parameters passed to fts4aux queries do not contain embedded nul characters.
...
FossilOrigin-Name: df04859a995571cd6faf1abe088725708f35e81195760274df9e2ec9bd47f69f
2019-01-28 13:27:25 +00:00
dan
32bb700a95
Fix a broken assert() in fts3. Also some test script issues causing failures with builds that do not support fts3.
...
FossilOrigin-Name: d59567dda231e7ffec437d5e055676cf42d791196406cdc696cafa2583eb483b
2019-01-26 21:05:54 +00:00
drh
0578084507
Fix the assert_fts3_nc() macro so that it works for test builds that omit
...
SQLITE_DEBUG.
FossilOrigin-Name: b10df2b569e356551cf51ca179f307e4f8827413ee9feb886db1f1e0650e6c5f
2019-01-25 18:17:03 +00:00
dan
c1f6618217
Add an assert_fts3_nc() macro to fts3 - for assert() conditions that are only true when it is guaranteed that the fts3 database is not corrupt.
...
FossilOrigin-Name: 3498908cd7f3d0e35b70796537124e3da0bd99d48750ba51bcb9eba87e28ed4d
2019-01-25 14:48:18 +00:00
dan
813ed78054
Fix a buffer overread in fts3 that could occur in a prefix query on a corrupted database.
...
FossilOrigin-Name: d0d5689371577b2861d4a9464443d055f3256f3f51d89e0388233a4cbe2601ee
2019-01-24 17:41:12 +00:00
dan
2c7a73eaea
Fix another segfault caused by a corrupt fts3 database.
...
FossilOrigin-Name: ba3b8412726548a0716c1a2d67260c3b7e31956474f4cd4ce607cf2cebc667dd
2019-01-22 12:21:28 +00:00
dan
129371553c
Avoid deferencing a freed pointer following an OOM or SQLITE_CORRUPT error in
...
the fts3 xDestroy method.
FossilOrigin-Name: 505ed9a47825240979338a24044559613fbbd2a7850bdff70c7164da054ec63d
2019-01-21 17:57:31 +00:00
dan
ac30553f76
Remove a faulty assert() from fts3.
...
FossilOrigin-Name: 6c33a303ebbb0f5193ead535280ba63118e14fb4f9977ce80dc716a0b082ec99
2019-01-21 16:12:20 +00:00
dan
225b05795f
Fix a memory leak introduced by [55c5d72a].
...
FossilOrigin-Name: fbd681dce2905d8b8ad7948ba684b0b62d6c04be0f7a2992ee7d6836a99010de
2019-01-18 21:17:08 +00:00
dan
a86b20820d
Fix an infinite loop caused by a corrupt database in fts3. Also an undefined
...
left-shift in fts5.
FossilOrigin-Name: 55c5d72af9510e2f27c33544d804a58d4282b0efb384ead38484129ce91b574f
2019-01-18 21:03:15 +00:00
dan
451297752c
Fix problems causing undefined left-shift operations in the fts3 snippet()
...
function.
FossilOrigin-Name: b90dbaed3092236e97f9796fa63989a3648060e16189e1267c430f4a7e799fac
2019-01-18 19:26:48 +00:00
drh
30fdb45da0
Ensure that the variable-length integer decoder in FTS3 never tries to
...
left-shift a negative number.
FossilOrigin-Name: 10ffc1fe006a1766ff2f1ffc6129786afb86b6b1f8d3a17334e8ecb838d37b9c
2019-01-17 03:43:38 +00:00
dan
e011ee2830
Fix a problem in the fts3 matchinfo() function with corrupt database handling.
...
FossilOrigin-Name: 24ed5fb6aea30b098d2faf3cf9d638933e518657217e903239ffaa1e25d34f66
2019-01-16 19:44:09 +00:00
dan
4ccb41fc99
Fix a memory leak that could occur in fts3 when handling a corrupt database.
...
FossilOrigin-Name: 65cebb06a0afcbcb4157c3d518a62ed188b1e90d9e9b69d88fece484bcb6e380
2019-01-16 11:38:06 +00:00
dan
a783931794
Fix a buffer overread in fts3 caused by a corrupt record.
...
FossilOrigin-Name: e54efd60c20bbfc5d70ddb9e1dd6ffb68cbbcfa57b4f07cb104767ef08c1a559
2019-01-15 16:14:31 +00:00
dan
94ec92a1f7
Fix a problem with querying a corrupt fts3 database.
...
FossilOrigin-Name: 65e50706a017751d72d0f9c7f575955194977decd0acf13aaca90c3cb925f20e
2019-01-14 15:09:00 +00:00
dan
68c1f9ce9a
Have fts3 ignore empty sets of parenthesis if built with
...
SQLITE_ENABLE_FTS3_PARENTHESIS.
FossilOrigin-Name: c93c6b45a317c40eb5c0abb6620d21f5821a601632c791e11e5ce62e039eccda
2019-01-14 11:56:13 +00:00
dan
b4439eef10
Fix a problem with corrupt database handling in the fts3 matchinfo() function.
...
FossilOrigin-Name: 703646b1b5c84d550fe0d74e399c0eeb729da1d263e4693320f69e6509678985
2019-01-12 14:58:35 +00:00
drh
3e534eac19
Improved shadow table corruption detection in the matchinfo() function of FTS3.
...
FossilOrigin-Name: 567be3bb1e8b6477f3bf1c7b4cd6ec066fba69d0dcf8785632e244ce25db639f
2019-01-12 00:12:33 +00:00
dan
90294961da
Fix a segfault in fts3 prompted by a corrupted database.
...
FossilOrigin-Name: 2d7b1d1d41ff69d5465fcb861420816ecb066c25a9015eefdab5fae15a2e1c9f
2019-01-11 21:34:25 +00:00
drh
c49d43a787
Fix the fts3DecodeIntArray() function so that it will not read off the end
...
of the buffer it is handed. Any unread integers are set to zero.
FossilOrigin-Name: 666cf8f6b39ae1f72e82b45e9cacba23caf61370ca0c695b3b14452accbb1a0d
2019-01-10 01:12:43 +00:00
drh
2d77d80a65
Use 64-bit math to compute the sizes of memory allocations in extensions.
...
FossilOrigin-Name: ca67f2ec0e294384c397db438605df1b47aae5f348a8de94f97286997625d169
2019-01-08 20:02:48 +00:00
drh
8fc4a11c94
Fix harmless compiler warnings in the unicode2 logic of FTS3 and FTS5.
...
FossilOrigin-Name: 703029ac6d24860230a8c30fcbf5e7e1da619e84f1cc9b9e65ebc74879a184d2
2019-01-02 23:49:47 +00:00
dan
b163b57212
Fix problems in fts5 found by ASAN.
...
FossilOrigin-Name: c564bf870106faef297594a51995619c80311d06bd5f8a0c7644f666f22ba576
2018-12-28 07:37:22 +00:00
dan
d8f3b4c320
Fix a problem with corrupt fts3 database detection introduced by [95a9a39f].
...
FossilOrigin-Name: c80bb15b44e9b6a3c0c5a49d5e93e66376c3520ecefc1db7425c8a7e09d3eade
2018-12-26 14:15:09 +00:00
dan
29e9af8848
Change the way a comparison used to detect corrupt databases in fts3 is done
...
to avoid potential pointer overflow in 32-bit builds.
FossilOrigin-Name: 95a9a39ff784b960b62dd6298e722a620ba3f9c8b76839a49bbef35d7bc84a8e
2018-12-24 13:34:36 +00:00
dan
fb11bf8c91
Avoid a left-shift of a negative value (undefined behaviour) when dealing with a corrupt database in
...
fts3.
FossilOrigin-Name: b851d12474035328df8354c7da8d81bc78833c8c704153f9f573c19b47a8487e
2018-12-22 09:39:06 +00:00
dan
1ea0443c2d
Add new sqlite3_prepare_v3() flag SQLITE_PREPARE_NO_VTAB, for preparing
...
statements that are not allowed to use any virtual tables. Use this to prevent
circular references in triggers on virtual table shadow tables from causing
resource leaks.
FossilOrigin-Name: 25666e3d03950caf753295cdb55df162e07dbcf6840b05875c6e0b127c469ecb
2018-12-21 19:29:11 +00:00
drh
afdc9e23fc
In FTS3, avoid calling memcpy() with a NULL source pointer, even if the
...
transfer amount is zero bytes.
FossilOrigin-Name: 1abb83d29a06308c96bea379311b390240347c5f81824749348d18ad75840c96
2018-12-21 18:51:27 +00:00
dan
e1e28ec35c
Remove an assert() that could fail on a corrupt db from fts3_write.c.
...
FossilOrigin-Name: 4cdcda408a4edcd2845584ddef64f0efdd2b4cc030afbc05fc2b8b555c69d3f6
2018-12-21 11:53:43 +00:00
drh
3c2db5def6
Fix harmless compiler warnings.
...
FossilOrigin-Name: 27221c69901d2b4546167639c4a3c8f54b2e18820f1346870fa26b7c919027db
2018-12-14 18:11:02 +00:00
drh
f8c2fea195
Remove the unused sqlite3Fts5UnicodeNCat() function.
...
FossilOrigin-Name: 7149dacf1d440a19f62808b4591c3fa8da202b2ec742d5490a63f2ec005ff9e7
2018-12-03 17:40:46 +00:00
dan
e89feee5c3
Add the "remove_diacritics=2" option to the unicode61 tokenizer in both FTS5
...
and FTS3/4.
FossilOrigin-Name: 06177f3f114b5d804b84c27ac843740282e2176fdf0f7a999feda0e1b624adec
2018-12-03 16:14:49 +00:00
dan
bcdef69482
Add an "#ifndef SQLITE_DISABLE_FTS4_DEFERRED" block around function
...
fts3EvalDeferredPhrase() in fts3 in order to silence a compiler warning.
FossilOrigin-Name: 6f4b0d0494446d46ac22b17650a25b025995cc545cac8fbc4776cf9dd388bcd8
2018-11-27 09:57:10 +00:00
drh
fc25721c9e
Only allow shadow table to be written from within a recursive SQL call.
...
Omit the SQLITE_PREPARE_SHADOW flag. Some tests are failing because the
tests depend on being able to write to shadow tables.
FossilOrigin-Name: d890c6582524677666e6f5b5817331dec332ade16b2f744cbb8a3c7dd9b63e21
2018-11-06 14:03:07 +00:00
drh
84c501bac1
Initial code to make shadow tables read-only to ordinary SQL. The now
...
xShadowName method is added to the sqlite3_module object and is used
to identify potential shadow tables. The SQLITE_PREPARE_SHADOW argument
to sqlite3_prepare_v3() is defined. It is designed to permit writing to
shadow tables, but is currently an unused placeholder.
FossilOrigin-Name: 31942b3dd3f66eb0d9977bf1cadc2f2d7be7967cce2b55784be0b939dfef1985
2018-11-05 23:01:45 +00:00
dan
29d77dc450
Add extra defenses against strategically corrupt databases to fts3/4.
...
FossilOrigin-Name: d44318f59044162e229a444582692e9788f17b5c404b4eb702f4c2114b22fefe
2018-11-03 16:51:30 +00:00
dan
d2f65014bb
Fix a broken assert() in fts3.c.
...
FossilOrigin-Name: 564fa75195c5179d0bc86431aaff06136fc65ec63aa9839cd1114b1fbfac928b
2018-09-10 16:38:25 +00:00
dan
b80bb6ce88
Add the "categories" option to the unicode61 tokenizer in fts5.
...
FossilOrigin-Name: 80d2b9e635e3100f90cffdcffa5b5038da6fbbfccc9f5777c59a4ae760d4cb62
2018-07-13 19:52:43 +00:00
drh
6bfd973ce6
Fix compiler warnings in FTS3.
...
FossilOrigin-Name: de508e831a43f02c3b354a24ea34798da03c163bae5521c852c9ddd252723739
2018-04-28 04:10:55 +00:00
dan
03db962ab5
Update test script fts3expr4.test so that it always creates fts3 tokenizers in
...
the "en_US" locality.
FossilOrigin-Name: 576a8f69ae25883f752e58953624e9f7126db998bebaa1f07f7c2ec47aaecabe
2018-04-27 18:05:01 +00:00
drh
d446e79545
Remove an unused variable from FTS4.
...
FossilOrigin-Name: 27ea783b281606196ad1e7e6e6dcbd80c75d4bafcf3e58756a71c213320e4db2
2018-02-13 16:30:19 +00:00
dan
e84c498be1
Ensure that multiple updates of the same FTS4 row (i.e. the row with the same
...
rowid) within a single transaction are written to separate segments. Fix for
[d6ec09ec].
FossilOrigin-Name: d2a81a3752a8298ee65fddcf32dee2147ba6467f770315a41966b3533977aa64
2018-02-13 16:21:32 +00:00
dan
eab0e10304
In extensions rtree, fts3 and fts5, ensure that when dynamic buffers are bound
...
to persistent SQL statements using SQLITE_STATIC, the binding is replaced with
an SQL NULL before the buffer is freed. Otherwise, a user may obtain a pointer
to the persistent statement using sqlite3_next_stmt() and attempt to access
the freed buffer using sqlite3_expanded_sql() or similar.
FossilOrigin-Name: 2a5f813bc61f9e780f2ccbda425611f65ad523b6d486a1e5e2b9d5e9f1d260a2
2018-02-07 18:02:50 +00:00
drh
22930062d5
Add a destructor argument to sqlite3_bind_pointer()
...
and sqlite3_result_pointer().
FossilOrigin-Name: 3d9e841f6011480ebb8a6d860da72af7fa545983e08835ddef2cac96e5f5cd4b
2017-07-27 03:48:02 +00:00
drh
ae3ec3f920
Add an experimental "pointer type" parameter to sqlite3_bind_pointer(),
...
sqlite3_result_pointer(), and sqlite3_value_pointer(). The pointer type is
a string that must compare equal using strcmp() or else the pointer comes
through as a NULL.
FossilOrigin-Name: 211cce04e97d2e325a6ea3e99738fc71115d673dc13daeffb03ac3140deb11de
2017-07-17 00:40:19 +00:00
drh
d43748aa98
Update the FTS3 extension to use sqlite3_result_pointer() and
...
sqlite3_value_pointer() for passing FTS3 cursor objects from the table
into functions such as snippet().
FossilOrigin-Name: 0fa2e170e5e078d155c98b212ade36bd8424502ae07f2d82ebf77a76f57586ba
2017-07-13 17:48:14 +00:00
dan
adea0d1c39
Have fts3 virtual table cursors free internal resources when they reach EOF,
...
instead of waiting until the xClose method is called.
FossilOrigin-Name: b6b14ab6c8f9758a64e5fd29203f8fa610b5c4ef917de9be51ae55e072fad4ed
2017-07-05 18:48:07 +00:00
drh
2c2f392dca
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the
...
extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one
bit in that argument.
FossilOrigin-Name: 4a25c5883380fe5990d8180adb58c3bdc7a3d081bc4c69cd4de3cd57074fb251
2017-06-01 00:54:35 +00:00
drh
e780764b4e
Fix the fts3EvalAverageDocsize() routine so that it returns errors from
...
sqlite3_reset() rather than always returning SQLITE_OK.
FossilOrigin-Name: 430f539cbb3f806fb89191e0b759a5f8b49d9e5b6c95fe9a4b55a1aa0875762a
2017-05-02 18:00:31 +00:00
dan
dc62daca86
Further improvements to coverage of fts3 module.
...
FossilOrigin-Name: 6b21d0fdebdccfaf63590d9ca9a279c22b8baec07c1a669b9f617f25bd857384
2017-04-19 13:25:45 +00:00
dan
a059e99ca8
Further modifications and test cases to improve test coverage of fts3.
...
FossilOrigin-Name: ea8a0d2ce0cb1ca3f4f18c72fb780d1c26792799acc87e6726f9eaccf2f178bf
2017-04-19 07:33:52 +00:00
dan
0027e98b85
Use sqlite3_table_column_metadata() instead of a SELECT statement to check for
...
the existence of a %_stat table in fts3. This leads to smaller and easier to
test code.
FossilOrigin-Name: dc2a48020a3c856a8b4cfa2309c290f0508b991e92cc0e4de680d19aae7872fc
2017-04-18 13:50:00 +00:00
dan
bda00fbdb7
Refactor the fts3ColumnMethod() function so that all branches can be covered.
...
FossilOrigin-Name: e47fdb493bd76d85f6f05771ee7a0b3ee31b1eb05839a60d2bdb47149ac692d8
2017-04-18 05:49:23 +00:00
dan
624edacf6a
Further improvements to test coverage in fts3.
...
FossilOrigin-Name: 352413eed469802665e7d2c17b7fe6e3a0b0b2209ce45bdc85fd4243cec50ea6
2017-04-17 16:07:25 +00:00
dan
ddf4747053
Improve coverage of code in fts3.
...
FossilOrigin-Name: 1a08a836fa919524216a16faf5212eebc9ad788c9e15463b68b0576dfccd4387
2017-04-17 13:38:09 +00:00
dan
119fc11eb0
Add short script ext/fts3/tool/fts3cov.sh. To help measure test-coverage of
...
fts3 source code.
FossilOrigin-Name: ee9588e873ffebcaa177957950cbb14924e154c391ed7f687116065064ff11b0
2017-03-21 17:19:31 +00:00
dan
74869e5e52
Avoid passing NULL as the second argument to memcpy() in fts3.
...
FossilOrigin-Name: 49b93d972de9649abfd6235b65dda1c9d468956671e50704afde6181ffa56dea
2017-03-20 19:35:30 +00:00
dan
920c83f18f
Fix some problems in fts3 found by address-sanitizer.
...
FossilOrigin-Name: 16a8e84fa7f67a467f824bdd7f72cbd6a6e95dab8cc7aa1e0e751720b98f3e31
2017-03-20 18:53:32 +00:00
dan
9c58b63c18
Add an sqlite3_set_last_insert_rowid() method. Use it to work around fts4 and
...
fts5 modifying the last-insert-rowid unintuitively from within commit
processing.
FossilOrigin-Name: fe41bb5632a5d438acfd682809f1bd12315b970a
2017-02-27 14:52:48 +00:00
dan
18fdde21b8
Avoid preparing a SELECT statement each time an UPDATE or DELETE
...
by docid is executed against an fts3 table.
FossilOrigin-Name: 9962c10a5c6672bd82b2bf640d878fcdac0b815a
2017-02-08 19:10:47 +00:00
mistachkin
2e52532217
Fix harmless compiler warnings seen with MSVC.
...
FossilOrigin-Name: 997f765bc6706769ae15f3e719354473e02bd78b
2017-02-01 22:43:08 +00:00
mistachkin
7617e4a8a4
Make sure the SQLITE_TCLAPI macro is always defined.
...
FossilOrigin-Name: f2f1323cc4d2ad2d6794dbfae8d50b747213e85d
2016-07-28 17:11:20 +00:00
mistachkin
52b1dbb5fc
Allow the 'testfixture.exe' target to be compiled with the __stdcall calling convention.
...
FossilOrigin-Name: e8be3dfeabaa31b3490793cf8230faae1204be15
2016-07-28 14:37:04 +00:00
mistachkin
77fac879d2
More harmless compiler warning fixes.
...
FossilOrigin-Name: ab69527c1608da0b668f3b49e967661dd99cc3d4
2016-04-12 20:05:06 +00:00
mistachkin
02267cc213
Compilation fix for a C99-ism in the 'fts3view' tool.
...
FossilOrigin-Name: bedb88a4b9c808ea781ae69058399a1a3a3d15fa
2016-04-12 19:30:31 +00:00
dan
57ebc84a6e
Fix a problem in fts3/4 that was causing it to discard data cached in-memory if an 'optimize' command is run when there is no data on disk. The usual way this would happen is if the very first transaction that writes to the fts3/4 table also includes an 'optimize' command.
...
FossilOrigin-Name: 79338b991bf01e81d336790ca87a0fa747da4ff3
2016-03-09 18:17:42 +00:00
dan
c7dbce0f2a
Update fts3/4 so that the 'merge=X,Y' command merges at least, instead of exactly, Y segments from a single level. This matches the documentation. 'merge=X,0' is, as it was in 3.11, an error.
...
FossilOrigin-Name: 64b3cb29159491cbfab7e01844b54408541ece5e
2016-03-08 15:37:48 +00:00
dan
108b7953ed
Update fts3/4 so that the 'merge=X,0' command merges X pages from all segments of the first level in the fts index that contains 2 or more segments.
...
FossilOrigin-Name: cddf69dbc46f10ee7e87538dd850e086386b544c
2016-03-07 20:14:27 +00:00
drh
d42908fb0e
Provide the new SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER option to
...
sqlite3_db_config() that can be used to activate the two-argument version
of fts3_tokenizer() for a specific database connection at run-time.
FossilOrigin-Name: 374b5108087a2eae03676c0f3469b37a272145bf
2016-02-26 15:38:24 +00:00
drh
e1ee002891
Fix a couple of harmless warnings generated by clang.
...
FossilOrigin-Name: a1a3ff1f53145c5a9fbf29398cf4a453729e71f0
2016-02-19 15:17:53 +00:00
dan
53ff9c2972
Fix a potential buffer overread provoked by invalid utf-8 in fts5.
...
FossilOrigin-Name: a049fbbde5da2e43d41aa8c2b41f9eb21507ac76
2016-02-12 18:48:09 +00:00
drh
4553f6ea91
Automatically disable FTS3 and FTS4 when building with SQLITE_OMIT_VIRTUALTABLE.
...
FossilOrigin-Name: 0beb32d20d8dd698138cdb2de6b6056de176754d
2016-02-11 22:41:04 +00:00
drh
83d7920e55
Fix a compiler warning when compiling without SQLITE_ENABLE_FTS3_TOKENIZER.
...
FossilOrigin-Name: 6926f28cd56bf61f7c92877baa54024bee7cbab5
2016-02-08 20:06:52 +00:00
dan
e064c4066c
Disable the two-argument form of the fts3_tokenizer() SQL function unless the library is built with -DSQLITE_ENABLE_FTS3_TOKENIZER.
...
FossilOrigin-Name: e0eb217aca7e4aadf9c44ed20822b78139f7c83c
2016-02-08 19:40:17 +00:00
mistachkin
8ccdef6be4
Fix some more harmless compiler warnings.
...
FossilOrigin-Name: 18f531e1cf3c8bb986d912c9c5e3f5698360c93e
2015-12-16 22:06:52 +00:00
dan
f24bebe37a
Update fts3 so that expressions to the left and right of a NOT operator are balanced. This prevents relatively small expressions (a dozen terms or so) that are children of NOT operators from triggering the "expression tree is too large" error.
...
FossilOrigin-Name: d6b66cd7b89fbd964f798d160a34caac0ba7347a
2015-10-05 15:39:45 +00:00
dan
5171e911f2
Fix an fts3 bug causing NEAR queries on uncommitted data to malfunction.
...
FossilOrigin-Name: 6f90839e91024e2006042f5eb7f21ca5b47a9b4a
2015-10-01 18:31:29 +00:00
dan
b3deb4ea64
Change the name of the new sqlite3_index_info.flags field to "idxFlags". Add documentation for the same to sqlite.h.in.
...
FossilOrigin-Name: f61203bc0fb0b62e12d6270e8d9063e445a5a252
2015-09-29 11:57:20 +00:00
dan
0f40037eee
Also allow UPDATE on virtual tables to use the onepass strategy.
...
FossilOrigin-Name: 1aa27d706db9b2e21737ce4b94b47ecd12c2570f
2015-09-28 20:03:49 +00:00
dan
d943b27596
Update fts3 to use the onepass strategy for delete operations.
...
FossilOrigin-Name: fffab4f70f85eeb2acbb89534064a6e397c39384
2015-09-28 15:23:29 +00:00
dan
5a51c272ea
Remove a duplicated "if" condition from fts3.c.
...
FossilOrigin-Name: ee348b12754abda1fe13231c1868faca9d78481c
2015-07-25 19:26:52 +00:00
dan
a90579db99
Fix two problems that could cause fts3 auxiliary functions to occasionally misbehave if used with match expressions that contain both OR and NEAR.
...
FossilOrigin-Name: 372c1db2475f367d54270d5801aff0503745bff4
2015-07-08 17:59:08 +00:00
dan
3f09beda45
Remove "#ifdef SQLITE_ENABLE_FTS5" from individual fts5 source files. Add a single "#if !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_FTS5)" to fts5.c.
...
FossilOrigin-Name: 7819002ed85497bbd0f9cf4d39df641573324436
2015-07-02 15:52:21 +00:00
dan
018a93d216
Remove unnecessary lines from fts3.h and main.mk.
...
FossilOrigin-Name: c1b268ced38259706674ed2fcbf842d3fbd9fb8c
2015-06-26 20:13:56 +00:00
dan
c94a08100b
Merge latest trunk changes with this branch. Add tests for columnsize=0.
...
FossilOrigin-Name: ef44c71a22518727030dd90c0139af8973b05841
2015-06-23 15:06:13 +00:00
drh
f5ed7ad63e
Fix harmless compiler warnings.
...
FossilOrigin-Name: b0badb99023e23bef0e2064cec58f2b279af0c0b
2015-06-15 14:43:25 +00:00
dan
167fd757f0
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: c9ffda4abb4390bbc5719e269196e2807b254f97
2015-06-02 18:07:58 +00:00
dan
add0804943
Avoid using a zero-sized array within a struct in fts3 code.
...
FossilOrigin-Name: b05cae36cedd98d59813e637f328a52eee7ef0d2
2015-05-26 17:29:48 +00:00
dan
3fb37f097c
Fix an fts4 matchinf() problem triggered by deferred tokens that are part of phrases that are part of AND expressions.
...
FossilOrigin-Name: f1e942a1dda496a509741e9cc2a17e8b4dac63a3
2015-05-25 10:57:13 +00:00
dan
2e7d35e2fe
Avoid making redundant copies of position-lists within the fts5 code.
...
FossilOrigin-Name: 5165de548b84825cb000d33e5d3de12b0ef112c0
2015-05-23 15:43:05 +00:00
dan
21b7d2a9b8
Improve test coverage of fts5_unicode2.c.
...
FossilOrigin-Name: fea8a4db9d8c7b9a946017a0dc984cbca6ce240e
2015-05-22 06:08:25 +00:00
drh
7ac07bda73
Fix the MSVC makefile so that it works with OTA. Fix a harmless compiler
...
warning in FTS3.
FossilOrigin-Name: c7b16645307d6e46c4153693d6806269de64955f
2015-05-19 22:56:45 +00:00
dan
5d03b9d365
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: b5f0e8c5b4bc018d672617ffd342d12b228548b9
2015-05-13 18:12:58 +00:00
dan
739b903e6d
Remove some dead code from fts3_snippet.c.
...
FossilOrigin-Name: 46b2d3cef5c22a9e6bd0a4f8411f17b7ec72bd18
2015-05-06 17:51:59 +00:00
dan
e60aedc564
More optimization for the 'y' and 'b' matchinfo directives.
...
FossilOrigin-Name: 8c5b9fedfcee3ac22a222819dceb981ad94a9903
2015-05-06 17:41:19 +00:00
dan
753c1f56db
Further optimizations for the 'y' and 'b' matchinfo operators.
...
FossilOrigin-Name: fbd038bb57322e1ed2e1ee52f3d134594b6bfcc0
2015-05-06 08:43:26 +00:00
dan
99eaf39784
Add the fts3 matchinfo 'b' flag.
...
FossilOrigin-Name: b9b77972d88171e4239b8194f308eb5d60b5d172
2015-05-05 20:39:53 +00:00
dan
b2bd727e52
Optimizations for the matchinfo() function, particularly the 'y' flag.
...
FossilOrigin-Name: dddd7e182943a1d3a9d32830e819a63f1a228d6d
2015-05-05 19:37:07 +00:00
dan
28f98455f4
Add the experimental matchinfo 'y' flag to fts3/4.
...
FossilOrigin-Name: 92941609af74044b3078e020324a37b04a0638b0
2015-05-02 09:44:15 +00:00
drh
abf582509d
Use the sqlite3Fts3ErrMsg() function to set error message text in FTS3,
...
and to ensure that error messages are not overwritten and thus leaked.
FossilOrigin-Name: 605347e087ec5eb817f3c94f4616abe26c7ab66b
2015-05-01 14:07:30 +00:00
dan
ef8b74324d
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 1c78d8920fb59da3cb97dd2eb09b3e08dfd14259
2015-04-24 20:18:21 +00:00
dan
38f2024062
Fix a problem causing the fts3 integrity-check to fail if run inside a transaction.
...
FossilOrigin-Name: 3b925189a75eae875da256b6e54999cad3cef1eb
2015-04-23 11:52:04 +00:00
dan
062c267dff
Update this branch with latest trunk changes.
...
FossilOrigin-Name: 9797482ded7de985e3b20aedec5e4d81f55065c8
2015-04-22 09:40:35 +00:00
dan
3c9a073723
Fix an fts4 problem to do with the handling of phrases that contain zero tokens.
...
FossilOrigin-Name: caba5be0b2bdaf4eb4af9af267c0c22dfbd3dba5
2015-04-21 12:06:53 +00:00
mistachkin
8e18922f12
Fix harmless compiler warnings seen with MSVC 2015.
...
FossilOrigin-Name: d05becd873a03a366843a34e7f4c732dd8f88c86
2015-04-19 21:43:16 +00:00
dan
1586699cfc
Fix a problem affecting some fts3 UPDATE and DELETE statements on order=DESC tables.
...
FossilOrigin-Name: 284c1623f81704ef80edb9324954525cb2b72172
2015-04-17 20:51:55 +00:00
drh
a4bb7764fe
Fix a boundry-value condition in the phrase poslist extractor of FTS3/4.
...
FossilOrigin-Name: 55d10baf0bffdb1a34bf5627ed8f25e4a4efd942
2015-04-16 20:10:17 +00:00
dan
0d01ec8de8
Remove an incorrect assert() statement from sqlite3Fts3Dequote().
...
FossilOrigin-Name: bd06eeb8d06237dc2d54d8a03e8bf525cb811c9e
2015-04-15 09:16:39 +00:00
dan
2deb12be2b
Fix a problem causing an assert() to fail if a snippet containing 0 tokens was requested from fts3.
...
FossilOrigin-Name: eafd0a1e3f25f38d551603f177ff4634cf79de77
2015-04-15 08:20:50 +00:00
dan
75395ccd17
Do not allow virtual table constructors to be called recursively.
...
FossilOrigin-Name: 0a72726da21581ab16cb3e964bd825b8f2e931e4
2015-04-10 07:55:07 +00:00
dan
4b0000c9a8
Fix a problem with fts3 prefix terms within phrase queries on "order=DESC" tables with a mix of negative and positive rowids.
...
FossilOrigin-Name: 0cdf502885ea7e5805d7ba3719f055f5d48fc78d
2015-04-06 09:05:29 +00:00
drh
f3e8748683
Fix a harmless compiler warning in FTS3.
...
FossilOrigin-Name: 1688f60c08cc9270948402d98a2333382aa32681
2015-03-26 14:29:51 +00:00
drh
3858cb44b6
Add a missing "int" on a constant declaration.
...
FossilOrigin-Name: 235157de5113ac4c750e36a498e2a1f1cf461751
2015-03-21 20:50:58 +00:00
dan
e10d87f65a
Avoid a segfault if NULL is passed as the first argument to SQL scalar function fts3_tokenizer().
...
FossilOrigin-Name: 6d0989695b486275824c14d5f88357267c1e8104
2015-03-21 19:35:09 +00:00
dan
71138b0f0f
Merge trunk changes with this branch.
...
FossilOrigin-Name: 142743918fd5a6d79fa10c44398360c3684a255a
2015-03-21 15:45:24 +00:00
dan
998aaa03ea
Avoid an integer overflow in fts3 causing gcc 4.7.1 with -O2 to behave counter-intuitively (perhaps because the behaviour is undefined). Add an "ifcapable trace" to a test in shell4.test.
...
FossilOrigin-Name: e3e234649616f20610abce9ae9da1c572d3a4377
2015-03-21 12:22:51 +00:00
mistachkin
44723ce096
Improvements to the MSVC build. Fix harmless compiler warnings. Enable use of 'stdcall'.
...
FossilOrigin-Name: 737630b87314283b2c38790ace9d25ec05f81f4a
2015-03-21 02:22:37 +00:00
dan
b7134d0863
Fix an FTS3/4 problem with handling empty tokenizer declarations (e.g. "CREATE VIRTUAL TABLE t(tokenize=);").
...
FossilOrigin-Name: 26d2def8a53094356008861636d66f9ae8f2448a
2015-03-19 16:25:42 +00:00
dan
e0417626ea
Silently ignore any attempt to add a prefix index for prefixes zero bytes in size to an fts3/4 table. Or any prefix index size so large that it overflows a 32-bit signed integer.
...
FossilOrigin-Name: ad4b19d2ac0889a23fe3b0fd844286efc10cdd82
2015-03-19 15:52:07 +00:00
mistachkin
0b7ff5c11b
Fix harmless compiler warning.
...
FossilOrigin-Name: 580dae4615353d73c7d096107571bd60fec5b0f2
2015-03-04 20:18:55 +00:00
dan
57fec54b53
Fix some problems with building fts5 and fts3 together using the amalgamation.
...
FossilOrigin-Name: fb10bbb9f9c4481e6043d323a3018a4ec68eb0ff
2015-02-02 11:32:20 +00:00
dan
32348f7bd2
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 76212f2c9a3c3ff0e238d6dad776938c6af674e6
2015-02-02 09:40:36 +00:00
dan
88392bf3ce
Optimize range constraints on the rowid column of fts3/4 tables even if there is no MATCH clause in the query.
...
FossilOrigin-Name: 85dc12625d300fe48f3c096f54ebcb8b6ef4e30a
2015-01-29 11:52:22 +00:00
mistachkin
e4a0d79b8a
Fix harmless compiler warnings.
...
FossilOrigin-Name: e7d2ec048c88237c124fbe598f8f7e950d43d90f
2015-01-27 21:24:33 +00:00
dan
6f0138e89e
Fix a bug in the fts3 snippet() function causing it to omit leading separator characters from snippets that begin with the first token in a column.
...
FossilOrigin-Name: adc9283dd9bc3a6463f8c4fe23dd58a3712c349d
2015-01-27 19:01:26 +00:00
dan
18f6ff9eb7
Improve the performance of fts3/4 queries that use the OR operator and at least one auxiliary fts function.
...
FossilOrigin-Name: 245e8730451fbdc1c729beff7295c452df604009
2015-01-27 18:43:02 +00:00
dan
997d798d92
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: b3348b1e07e168b156636a29fc8c6d6afb3129c2
2015-01-21 06:36:07 +00:00
mistachkin
1a51ce78ba
Fix some harmless compiler warnings.
...
FossilOrigin-Name: 2b8eecbfe7935d3d9826fbcd473dd3a49138ad11
2015-01-12 18:38:02 +00:00
dan
37db72f1f7
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 4b3651677e7132c4c45605bc1f216fc08ef31198
2015-01-01 18:03:49 +00:00
dan
6024772ba2
Add a version of the unicode61 tokenizer to fts5.
...
FossilOrigin-Name: d09f7800cf14f73ea86d037107ef80295b2c173a
2015-01-01 16:46:10 +00:00
drh
063970a15f
Fix comment typos reported on the mailing list. No changes to code.
...
FossilOrigin-Name: 93a71c9f058b58d11187293a1e8d5324d0911880
2014-12-04 14:01:39 +00:00
dan
6e1a037357
Allow FTS tokenizers to choose whether or not to consider the "*" character part of tokens or not. This restores the pre-[e21bf7a2ad] behaviour. Also fix a problem causing FTS to interpret tokens beginning with "*" characters as EOF.
...
FossilOrigin-Name: 49dfee7cd1c9ab2901b8a871a6cd00b2ead76801
2014-10-09 15:08:17 +00:00
drh
a8950d5038
Fix a memory leak associated with the FTS4 matchinfo() function.
...
FossilOrigin-Name: fb8da82411b80a234c6a5481622027815450996a
2014-10-09 14:00:49 +00:00
drh
b8e8d5055a
Fix a harmless compiler warning inside an assert() in FTS4.
...
FossilOrigin-Name: 418f3c9ad28672e5fe38d772d34e7cf8d26bc0e1
2014-10-06 12:41:57 +00:00
drh
490fe86f1a
Fix harmless compiler warnings.
...
FossilOrigin-Name: 52b03f045edf6fc29f9ba9a5cac53a59f0feb0eb
2014-08-11 14:21:32 +00:00
drh
858b638d1f
A couple more harmless compiler warnings eliminated.
...
FossilOrigin-Name: bcf6d775f90f4d1ba018a1b965f2f710df130f01
2014-08-06 18:50:51 +00:00
drh
e8f2c9dc71
Fix two more harmless compiler warnings. Make sure the fts3_unicode2.c file
...
is in sync with mkunicode.tcl.
FossilOrigin-Name: a2a60307ea68a3230952a56cb65369ba0a208967
2014-08-06 17:49:13 +00:00
mistachkin
86ac612e8a
Fix some harmess compiler warnings in the FTS3 Unicode module.
...
FossilOrigin-Name: c01caea5d6ad7a570628b85fb3056ac955ff03dd
2014-07-19 15:44:29 +00:00
mistachkin
166c373779
Fix harmless compiler warnings in the fts3view utility program that can occur with MSVC.
...
FossilOrigin-Name: 1cec1e030035e5253fb7ebbdfe5c1a3029e4e29b
2014-07-07 18:03:38 +00:00
drh
42d3d37ad1
Fix a division-by-zero error in the fts3view utility program. Add the
...
fts3view utility program to the "main.mk" makefile.
FossilOrigin-Name: 64f02699b4bd747e4c2f0debf72d37ec275137d8
2014-07-07 16:07:43 +00:00
dan
2eaf03d72b
Change fts3/4 so that the "unicode61" is included in builds by default. It may now be excluded by defining SQLITE_DISABLE_FTS3_UNICODE.
...
FossilOrigin-Name: 0cc0230ae9cfc9760fd8ef2c25e82576b052dbeb
2014-07-03 12:18:22 +00:00
dan
e0fa4107c2
Add some code for an experimental fts5 module. Does not work yet.
...
FossilOrigin-Name: 1e0648dcf283d4f1f6159db4d2433b6cc635992e
2014-06-23 11:33:22 +00:00