/ File History
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of ext/fts3/fts3_write.c

2019-12-04
03:46
Fix a buffer overread that could occur in fts3 with corrupt %_stat records. file: [fa971df9] check-in: [e01fdbf9] user: dan branch: trunk, size: 195276
2019-11-26
11:10
Fix to check-in [5d9a369301a65f32] so that it compiles without SQLITE_DEBUG. file: [5b9c8870] check-in: [fefe2d04] user: drh branch: trunk, size: 195155
02:03
Fix an assert() in fts3 that could fail due to corrupt database records. file: [7d590628] check-in: [5d9a3693] user: dan branch: trunk, size: 195159
2019-11-20
13:31
Further improve detection of corrupt records in fts3. Also fix an error with check-in [dfcf081d842629a0] file: [411364ee] check-in: [a0f6d526] user: dan branch: trunk, size: 195096
2019-11-18
12:04
Further improvements to shadow table corruption detection in FTS3. file: [4adce929] check-in: [e35d8c76] user: drh branch: trunk, size: 195101
2019-11-17
02:41
Better detection of corruption in the %_stat and %_docsize shadow tables of FTS3. file: [a96fd130] check-in: [1e449687] user: drh branch: trunk, size: 194983
00:08
Remove a reachable NEVER() in FTS3. file: [f31351fc] check-in: [8bd75bf6] user: drh branch: trunk, size: 194987
2019-11-16
23:47
More improvements to shadow table corruption detection in FTS3. file: [84f7b139] check-in: [51525f9c] user: drh branch: trunk, size: 194995
21:40
Improved detection of corrupt shadow tables in FTS3. Enable the debugging special-inserts for FTS3 for both SQLITE_DEBUG and SQLITE_TEST. file: [f7d443eb] check-in: [04b2873b] user: drh branch: trunk, size: 194679
2019-10-28
13:54
Fix a problem in fts3 causing it to report corruption if a doclist contains consectutive rowid entries that differ by more than 2^63. file: [bf724ff6] check-in: [0b0a3048] user: dan branch: trunk, size: 194118
2019-10-17
15:41
Avoid an infinite loop in fts3/4 incremental-merge in the case where the lowest level in the database contains segments but no data (because there is a delete-marker for each valid entry). Fix for [bf1aab89]. file: [aef93982] check-in: [35beaee0] user: dan branch: trunk, size: 194150
2019-10-11
15:33
Ensure fts3/4 prefix indexes are flushed to disk before an 'optimize' command. Fix for [745f1abc]. file: [5e35b790] check-in: [4ed905b1] user: dan branch: trunk, size: 193952
14:27
Fix the fts3/4 integrity-check command so that it works with "ORDER=DESC" tables. Fix for [8a6fa2bb]. file: [2fd47cef] check-in: [5863546d] user: dan branch: trunk, size: 193918
2019-10-10
16:41
Fix a problem in the fts3 integrity-check routine causing it to report as corrupt tables that contain values with embedded 0x00 bytes. Ticket [278ac142625e3dcd] file: [9b5ae495] check-in: [629e20c9] user: dan branch: trunk, size: 193814
2019-10-02
19:33
Fix a long-standing problem in fts4 incrmental merge. file: [13582783] check-in: [67da31e2] user: dan branch: trunk, size: 193875
2019-09-30
19:13
The nodeReaderInit() function in FTS3 may not assume that the node is non-empty. file: [4c759137] check-in: [361eb2f6] user: drh branch: trunk, size: 193872
2019-07-29
16:53
Fix a crash in fts3 caused by corrupt database records. file: [6efc4cd7] check-in: [11f7f94f] user: dan branch: trunk, size: 193846
2019-07-05
15:16
Fix a valgrind problem in fts3corrupt4.test. file: [9e88111c] check-in: [cb3dec42] user: dan branch: trunk, size: 193802
2019-06-04
13:11
Fix a segfault in fts3 that could occur when processing corrupt fts records. file: [b4c2e8fc] check-in: [dff24c6c] user: dan branch: trunk, size: 193581
2019-05-28
14:42
Fix an assert() in fts3 that could fail when processing corrupt records. Also some minor sanitizer warnings. file: [35f13d6f] check-in: [c736c40a] user: dan branch: trunk, size: 193512
2019-05-22
14:22
Fix a buffer overread that could in fts3 when dealing with corrupt records. file: [05fd8791] check-in: [1660d773] user: dan branch: trunk, size: 193415
2019-04-24
16:13
Fix another instance in fts3 where a corrupt record can cause a buffer overflow. file: [766cfc41] check-in: [e1724f1d] user: dan branch: trunk, size: 193411
15:13
Fix an error in fts3_write.c allowing a corrupt database to cause a crash. file: [23b93287] check-in: [6e4a5f22] user: dan branch: trunk, size: 193397
2019-04-13
04:38
Use the 64-bit memory allocator interfaces in extensions, whenever possible. file: [1d814248] check-in: [07ee06fd] user: drh branch: trunk, size: 193387
2019-02-18
12:16
Fix an assert() that might not be true if the %_segdir table of FTS3 contains corrupt entries. file: [8174c14b] check-in: [a6509ca3] user: drh branch: trunk, size: 193286
2019-02-09
19:23
Change a few assert() statements in fts3 that might fail if the database is corrupt. file: [3732d049] check-in: [db74a56a] user: dan branch: trunk, size: 193247
2019-01-25
14:48
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. file: [45cbe0b0] check-in: [3498908c] user: dan branch: trunk, size: 193223
2019-01-22
12:21
Fix another segfault caused by a corrupt fts3 database. file: [4f9d5132] check-in: [ba3b8412] user: dan branch: trunk, size: 193215
2019-01-16
11:38
Fix a memory leak that could occur in fts3 when handling a corrupt database. file: [f33df167] check-in: [65cebb06] user: dan branch: trunk, size: 192955
2019-01-14
15:09
Fix a problem with querying a corrupt fts3 database. file: [9d9c77ee] check-in: [65e50706] user: dan branch: trunk, size: 192914
2019-01-10
01:12
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. file: [18726fbd] check-in: [666cf8f6] user: drh branch: trunk, size: 192869
2018-12-26
14:23
Fix a problem with corrupt fts3 database detection introduced by [27199380]. file: [d8c64541] check-in: [ceeb4fba] user: dan branch: branch-3.22, size: 192655
14:15
Fix a problem with corrupt fts3 database detection introduced by [95a9a39f]. file: [e36d2f7e] check-in: [c80bb15b] user: dan branch: trunk, size: 192813
2018-12-24
13:39
Change the way a comparison used to detect corrupt databases in fts3 is done to avoid potential pointer overflow in 32-bit builds. Cherrypick of [95a9a39ff7]. file: [3618c009] check-in: [27199380] user: dan branch: branch-3.22, size: 192655
13:34
Change the way a comparison used to detect corrupt databases in fts3 is done to avoid potential pointer overflow in 32-bit builds. file: [6b00abe4] check-in: [95a9a39f] user: dan branch: trunk, size: 192813
2018-12-21
19:29
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. file: [8e67961f] check-in: [25666e3d] user: dan branch: prepare-no-vtab, size: 192815
18:51
In FTS3, avoid calling memcpy() with a NULL source pointer, even if the transfer amount is zero bytes. file: [6e50b0cf] check-in: [1abb83d2] user: drh branch: trunk, size: 192771
11:53
Remove an assert() that could fail on a corrupt db from fts3_write.c. file: [02764f12] check-in: [4cdcda40] user: dan branch: trunk, size: 192663
2018-12-19
01:57
Add extra defenses against strategically corrupt databases to fts3/4. file: [cdead226] check-in: [882ef4e3] user: drh branch: branch-3.9, size: 192371
01:38
Add extra defenses against strategically corrupt databases to fts3/4. file: [0559fca3] check-in: [4bb21d82] user: drh branch: branch-3.18, size: 192600
01:30
Add extra defenses against strategically corrupt databases to fts3/4. file: [b1c2129c] check-in: [c255889b] user: drh branch: branch-3.22, size: 192657
2018-11-05
23:01
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. file: [0031c455] check-in: [31942b3d] user: drh branch: read-only-shadow, size: 192751
2018-11-03
16:51
Add extra defenses against strategically corrupt databases to fts3/4. file: [a85bc488] check-in: [d44318f5] user: dan branch: trunk, size: 192697
2018-02-13
16:30
Remove an unused variable from FTS4. file: [b583dede] check-in: [27ea783b] user: drh branch: trunk, size: 192282
16:21
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]. file: [434fe5ea] check-in: [d2a81a37] user: dan branch: trunk, size: 192369
2018-02-07
18:02
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. file: [7a7cf93c] check-in: [2a5f813b] user: dan branch: trunk, size: 192411
2017-06-28
17:29
Instead of the new sqlite3_prepare_v3() interface, provide the SQLITE_DBCONFIG_PREPARE_FLAGS interface which sets the flags on the single next call to sqlite3_prepare_v2() or its cousins. file: [6422e0ef] check-in: [942c3ef8] user: drh branch: dbconfig-prepare-flags, size: 192299
2017-06-01
00:54
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. file: [a3f7bf86] check-in: [4a25c588] user: drh branch: prepare_v3, size: 192242
2017-03-20
18:53
Fix some problems in fts3 found by address-sanitizer. file: [a51d48d6] check-in: [16a8e84f] user: dan branch: trunk, size: 192185
2016-03-09
18:17
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. file: [c3863f23] check-in: [79338b99] user: dan branch: trunk, size: 192091
2016-03-08
15:37
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. file: [fb0456fa] check-in: [64b3cb29] user: dan branch: trunk, size: 192044
2016-03-07
20:14
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. file: [f56345c6] check-in: [cddf69db] user: dan branch: trunk, size: 192094
2015-10-01
18:31
Fix an fts3 bug causing NEAR queries on uncommitted data to malfunction. file: [f442223e] check-in: [6f90839e] user: dan branch: trunk, size: 191956
2015-09-28
20:03
Also allow UPDATE on virtual tables to use the onepass strategy. file: [6f7233a0] check-in: [1aa27d70] user: dan branch: vtab-onepass, size: 191753
15:23
Update fts3 to use the onepass strategy for delete operations. file: [5d7857a6] check-in: [fffab4f7] user: dan branch: vtab-onepass, size: 191754
2015-05-20
20:34
Fix a problem causing the fts3 integrity-check to fail if run inside a transaction. Cherrypick of [3b925189a75e]. file: [9d1f42ec] check-in: [7d7d633c] user: dan branch: branch-3.8.6, size: 191506
2015-04-23
11:52
Fix a problem causing the fts3 integrity-check to fail if run inside a transaction. file: [4f005f78] check-in: [3b925189] user: dan branch: trunk, size: 191533
2015-03-25
00:09
Backport the 'stdcall' related enhancements from trunk. file: [5dc59cb4] check-in: [cbb93d1a] user: mistachkin branch: stdcall-3.8.8, size: 191483
2015-03-21
02:22
Improvements to the MSVC build. Fix harmless compiler warnings. Enable use of 'stdcall'. file: [7104ec01] check-in: [737630b8] user: mistachkin branch: trunk, size: 191489
2015-01-12
18:38
Fix some harmless compiler warnings. file: [9b3a32cb] check-in: [2b8eecbf] user: mistachkin branch: msvcW4, size: 191470
2014-10-02
09:27
Fix a segfault that could occur if an 'optimize' command was issued on an FTS table that contained at least one row but zero terms. file: [d06519da] check-in: [b21746ac] user: dan branch: branch-3.7.14, size: 182163
2014-06-05
11:15
Fix a problem that was causing the FTS4 integrity-check command to fail if the table had one or more "notindexed" columns. file: [82603886] check-in: [7123bb26] user: dan branch: trunk, size: 191462
2014-05-27
19:18
Fix harmless compiler warnings. file: [5ee9d894] check-in: [20b75460] user: drh branch: trunk, size: 191359
2014-05-16
23:38
Fix harmless compiler warnings. file: [9e4e8579] check-in: [7e60347e] user: mistachkin branch: ftsWarnings, size: 191351
10:30
Fix a bug causing an incorrect segment size value to be stored if both an old and new FTS version performed work on the same incremental merge operation. file: [6681e485] check-in: [a9a2aeab] user: dan branch: fts4-experimental, size: 191343
2014-05-15
18:36
Fix a problem with the handling of delete markers by automerge on large databases. file: [b90173c6] check-in: [2b09bd17] user: dan branch: fts4-experimental, size: 191170
2014-05-14
19:49
Do not search for promotable segments following an FTS 'optimize' operation or creation of a new segment on the oldest existing level. file: [e58c8df1] check-in: [34f6b4b8] user: dan branch: fts4-experimental, size: 189921
18:45
Fix a problem to do with loading the value of the FTS automerge setting from the database. file: [6cb17b13] check-in: [7268119f] user: dan branch: fts4-experimental, size: 189777
15:58
Fix various problems to do with segment promotion. Add test file fts4growth2.test, containing tests to check that the FTS index does not grow indefinitely as the table is updated. Allow the user to configure the number of segments merged simultaneously by the automerge option. file: [5e13a15d] check-in: [21491a9b] user: dan branch: fts4-experimental, size: 189757
2014-05-13
20:11
Fix a problem preventing delete markers from ever being removed from the FTS index. file: [283b2447] check-in: [7f47ae5c] user: dan branch: fts4-experimental, size: 187584
2014-05-12
20:04
Experimental code to prevent FTS indexes from growing indefinitely as the table is updated. file: [5fd2aa9d] check-in: [b3b505a4] user: dan branch: fts4-experimental, size: 187259
2014-03-12
19:20
Changes to FTS to ensure that it does not access the database from within the xConnect method. file: [74c00329] check-in: [c67a52c3] user: dan branch: trunk, size: 183182
2013-11-12
17:46
When possible, have FTS use 32-bit operations to read varints from the database. file: [cdebe721] check-in: [aa7ba302] user: dan branch: trunk, size: 183029
2013-10-07
21:49
Fix compilation issue with MSVC. file: [17817f0c] check-in: [36d64dc3] user: mistachkin branch: trunk, size: 183085
2013-10-02
08:04
Add a test to check that the new multi-token phrase optimization is actually helping. file: [851e65f4] check-in: [bc3a2ed5] user: dan branch: fts4-docid-range-constraints, size: 183086
2013-08-21
15:45
Fix an FTS4 problem introduced by [361084e1eb]. file: [ce45c3ea] check-in: [5f35c8cb] user: dan branch: trunk, size: 182944
2013-08-19
19:29
Initialize a variable in fts3_write.c on the grounds that the argument required to show that it does not require initialization with is complicated. Add an assert() to where.c to silence a clang scan-build warning. file: [edf39aea] check-in: [d6c4d48a] user: dan branch: trunk, size: 182954
18:17
Add some extra assert() statements to silence a few clang warnings. file: [24a8e41c] check-in: [1c63e951] user: dan branch: trunk, size: 182950
2013-06-21
17:30
Add the "notindexed" option to fts4. file: [cd264daa] check-in: [8ff2b8f5] user: dan branch: fts4-notindexed, size: 182948
2013-06-20
18:32
Fix some issues related to ORDER BY and fts tables with a non-zero languageid_bits setting. file: [af8d9e57] check-in: [81527768] user: dan branch: fts-languageid-bits, size: 186625
11:48
Add tests (and a fix) for large and small fts docid values with various languageid_bits settings. file: [2ec89b83] check-in: [8dc261b7] user: dan branch: fts-languageid-bits, size: 185668
11:01
Fix fts handling of the case where both a rowid and docid are specified as part of an insert statement. file: [dda9bec5] check-in: [610e7e96] user: dan branch: fts-languageid-bits, size: 185610
2013-06-19
20:13
Add the languageid_bits= option to fts. Still some problems to work out. file: [b057e0f7] check-in: [d36d7e68] user: dan branch: fts-languageid-bits, size: 185617
2013-05-27
10:11
When writing to an FTS table, take an exclusive shared-cache lock on the %_segdir table before writing. Otherwise, an xCommit() call may report an SQLITE_LOCKED error. file: [6a1fc0e9] check-in: [3cd2da42] user: dan branch: trunk, size: 182633
2013-03-25
11:38
In fts3, when filtering lists for hits in a specific column, edit the list in place in the same way as it is for NEAR filtering. Fix for [38b1ae018f]. file: [d92c6cbe] check-in: [f85f9103] user: dan branch: trunk, size: 182967
2012-12-04
00:53
Fix an uninitialized variable detected by valgrind. file: [c2166f71] check-in: [ffd1e514] user: drh branch: trunk, size: 182608
2012-11-27
15:56
Fix a problem causing the "number-of-documents" field maintained by FTS4 to be set incorrectly by REPLACE queries. file: [a432433a] check-in: [e38fb02d] user: dan branch: trunk, size: 182608
2012-10-17
20:15
Initialize variables used as outputs of custom tokenizer method calls in fts4. file: [ba0bb0a9] check-in: [514505a8] user: dan branch: trunk, size: 182140
2012-08-25
10:01
Fix all known instances of 'repeated the' style typos in comments. No changes to code. file: [c30c49f3] check-in: [9b19b847] user: mistachkin branch: trunk, size: 182124
2012-08-20
17:24
Add the SQLITE_DISABLE_FTS4_DEFERRED compile time option. file: [f40042ba] check-in: [e799222f] user: dan branch: trunk, size: 182133
2012-06-08
14:01
Fix an obscure memory leak in FTS3 that can come about when two memory allocations are immediately adjacent to one another. file: [794438f9] check-in: [025227be] user: drh branch: trunk, size: 182089
2012-05-26
15:44
Add fault-injection tests that use the unicode61 tokenizer. Fix a problem revealed by the same. file: [6a6391d6] check-in: [ed28c48a] user: dan branch: fts4-unicode, size: 182002
2012-04-11
11:38
Fix harmless static-analysis warnings, mosting having to do with memory leaks in the command-line shell. Add a clang analysis of the command-line shell to the "warnings-clang.sh" script. Other minor cleanups to the command-line shell code. file: [cd4af00b] check-in: [93a0f452] user: drh branch: trunk, size: 181922
2012-03-30
00:00
Fix compiler warnings on GCC and MSVC and fix a C89-ism that broke the build for MSVC. file: [545c3e2a] check-in: [b451c0f9] user: drh branch: trunk, size: 181939
2012-03-28
18:08
Do the accounting for incr-merge work in pages instead of blocks. file: [bd0d354b] check-in: [83037d58] user: dan branch: fts4-incr-merge-exp, size: 182017
2012-03-27
15:00
Remove the fts3merge.test script in favour of changing the fts4merge.test script so that it runs tests using both fts4 and fts3. Fix some problems with incr-merge and FTS3 tables. file: [ceb65d6a] check-in: [5c447e22] user: dan branch: fts4-incr-merge, size: 181910
11:48
Allow multiple incremental merges to proceed concurrently. This is required to prevent a large crisis-merge from occuring while an even larger incremental-merge is underway. file: [a9990753] check-in: [7ed9d2f2] user: dan branch: fts4-incr-merge-exp, size: 181850
2012-03-26
10:57
Modify the FTS integrity-check so that the checksums do not depend on the results of signed integer overflow, which is undefined in C. file: [6014014c] check-in: [f907fc3f] user: dan branch: fts4-incr-merge, size: 179525
10:47
Add a comment to explain how the FTS integrity-check works. file: [554368a9] check-in: [64e8a116] user: dan branch: fts4-incr-merge, size: 179508
10:36
Add an experimental integrity-check function to FTS. file: [a95e0f29] check-in: [40fc8804] user: dan branch: fts4-incr-merge, size: 178574
2012-03-24
17:29
Enable fts3 tables to use incremental merge by automatically creating the %_stat table when it is needed. file: [6a092ee2] check-in: [cc051fc0] user: drh branch: fts4-incr-merge, size: 171718
17:09
Fix a failing assert() in the FTS3_LOG_MERGES related code. file: [ee3aeaa5] check-in: [4220d52c] user: dan branch: fts4-incr-merge, size: 171504
16:18
Fix a bug in debugging code enabled when FTS3_LOG_MERGES is defined. file: [d96bd53e] check-in: [2e06babf] user: drh branch: fts4-incr-merge, size: 171504
16:11
Remove the Fts3Table.mxLevel variable. file: [9c9d3062] check-in: [67a0cffc] user: dan branch: fts4-incr-merge, size: 171501
14:45
Modify the way the number of leaves written and the maximum relative level are calculated in the auto-incr-merge code. file: [c71f8471] check-in: [0d841c95] user: dan branch: fts4-auto-incr-merge, size: 171783
02:20
An attempt at automatic incremental merging for FTS4. file: [663f2fa5] check-in: [ed69434c] user: drh branch: fts4-auto-incr-merge, size: 171054
2012-03-23
18:26
Fix a spurious SQLITE_CONSTRAINT error that may be returned by an incr-merge operation. file: [e3b75053] check-in: [ed7c17ea] user: dan branch: fts4-incr-merge, size: 169104
14:38
Remove an incorrect assert() statement. Fix a const-related warning. file: [8791a3da] check-in: [96ed4749] user: dan branch: fts4-incr-merge, size: 167244
2012-03-22
16:48
Following an incr-merge operation that does not completely consume its input segments, store context in the rowid==1 row of the %_stat table that allows the next incr-merge to pick up where the previous left off. file: [62ada731] check-in: [ab0a4f44] user: dan branch: fts4-incr-merge, size: 167259
2012-03-17
16:56
Fix various incorrect and missing comments and other style issues in and around the FTS incremental merge code. file: [a78deea7] check-in: [7aabb62c] user: dan branch: fts4-incr-merge, size: 163144
2012-03-16
16:52
Cherrypick the [3475092cff] fix for 32-bit overflow with large language-ids into trunk. file: [8eedfeb2] check-in: [2755edc7] user: drh branch: trunk, size: 117191
15:54
Fix some integer overflow problems that can occur when using large langauge id values. file: [548d034e] check-in: [3475092c] user: dan branch: fts4-incr-merge, size: 156038
14:54
Add a comment to the FTS getAbsoluteLevel() function. No actual code changes. file: [fab92bcc] check-in: [7e0f861b] user: dan branch: fts4-incr-merge, size: 155843
2012-03-15
17:45
Modify incremental merge code to merge nMin segments at a time. file: [be60aaf4] check-in: [cd34bc1a] user: dan branch: fts4-incr-merge, size: 154439
2012-03-14
20:01
Add tests for incremental merge code. file: [35512166] check-in: [57047372] user: dan branch: fts4-incr-merge, size: 153803
12:17
Avoid allocating a large object on the stack in the incremental merge code. Use sqlite3_malloc() instead. file: [772b8c32] check-in: [36ae510d] user: dan branch: fts4-incr-merge, size: 153318
11:51
Fix another bug in the incremental merge code. file: [828b6395] check-in: [f97b12e0] user: dan branch: fts4-incr-merge, size: 153097
2012-03-13
19:56
Fix some bugs in the incremental merge code. Some remain. file: [d26ef198] check-in: [bff21683] user: dan branch: fts4-incr-merge, size: 153119
2012-03-09
12:52
Minor commenting and stylistic changes only. file: [80863b8e] check-in: [a1747086] user: drh branch: fts4-incr-merge, size: 152595
2012-03-08
18:39
Add the 'merge=?,?' command to fts4. This still needs some work. file: [81b885ef] check-in: [741b8f89] user: dan branch: fts4-incr-merge, size: 151903
2012-03-03
18:46
Add the xLanguageid method to sqlite3_fts3_tokenizer versions 1 and greater. file: [f87bb2d2] check-in: [f8e9c445] user: dan branch: fts4-languageid, size: 115762
2012-03-02
12:26
Fix the FTS 'optimize' command on multi-lingual databases. file: [35b98a42] check-in: [65fa6937] user: dan branch: fts4-languageid, size: 115650
11:48
Fix a bug in merging FTS language tables for languages other than language 0. file: [36fc2e3a] check-in: [d281cb89] user: dan branch: fts4-languageid, size: 115067
2012-03-01
19:44
Add the "languageid=" option to fts4. This code is still largely untested and alsmost certainly buggy. file: [489d262b] check-in: [bea257f7] user: dan branch: fts4-languageid, size: 115057
2012-01-31
23:34
Fix a compiler warning in FTS4. file: [1721187a] check-in: [b4cad1ce] user: drh branch: trunk, size: 112743
2012-01-25
22:08
Cherrypick the FTS fix in [c05c3fd20d9] into the nx-devkit branch. Ticket [edb497982c]. file: [cfb96f85] check-in: [2a7170f0] user: drh branch: nx-devkit, size: 112644
16:29
Fix an FTS problem triggered by querying for an N character prefix using an N+1 character prefix index after rows have been deleted from the FTS table. Fix for [edb497982c]. file: [632fe0af] check-in: [c05c3fd2] user: dan branch: trunk, size: 112739
2011-12-23
11:07
Fix a problem with [f9c4a7c8f4] as applied to this branch. file: [1041f612] check-in: [e6a04bf9] user: dan branch: branch-3.7.6, size: 91487
2011-12-22
18:44
Backport the fixes for Coverity-discovered problems in [1c27d84216], [676acce274], and [f9c4a7c8f4] from trunk to the 3.7.6 branch. file: [d0a3a60e] check-in: [a61786e7] user: drh branch: branch-3.7.6, size: 91501
17:31
Fix minor issues with FTS and RTREE discovered by coverity. file: [fdf0c998] check-in: [1c27d842] user: drh branch: trunk, size: 112250
15:30
Fix a problem in fts3_write.c causing stack memory to be referenced after it is out of scope. file: [fb1998be] check-in: [f9c4a7c8] user: dan branch: trunk, size: 112373
2011-10-19
18:21
Fix harmless compiler warnings in FTS4. file: [c097228b] check-in: [1af4a256] user: drh branch: trunk, size: 112155
16:20
Merge the fts4-content branch with the trunk. file: [f2545f59] check-in: [8a407705] user: dan branch: trunk, size: 112147
11:57
Change the way ^ tokens work in FTS so that the filtering is done as part of reading the FTS index instead of waiting until an entire doclist has been retrieved and then filtering it. file: [aaf0885f] check-in: [9b58c59e] user: dan branch: fts4-content, size: 112231
2011-10-18
19:39
If a token within an FTS query is prefixed with a '^' character, it must be the first token in a column of data to match. file: [567380f2] check-in: [63ac33c8] user: dan branch: fts4-content, size: 111818
2011-10-13
17:16
Handle updating the only row of an FTS table correctly. Fix for [9fd058691]. file: [ffe13acc] check-in: [7e24645b] user: dan branch: trunk, size: 108502
2011-10-05
15:11
Change FTS4 so that if both the content=xxx option and column names are specified, the virtual table assumes that the named columns correspond to columns of table xxx. file: [06520aa8] check-in: [289ee431] user: dan branch: fts4-content, size: 111776
06:07
Fix a problem with IO error handling in the rebuild-index code. file: [16fba93f] check-in: [c6ba81fc] user: dan branch: fts4-content, size: 111643
2011-10-04
11:22
Add experimental 'content' option to FTS4. file: [9e14eb54] check-in: [1d27ea74] user: dan branch: fts4-content, size: 111616
2011-06-20
19:00
More compiler warning fixes. file: [194829c8] check-in: [ed2dda93] user: drh branch: trunk, size: 108586
2011-06-16
16:06
Fix a problem with NEAR queries executed inside a transaction that writes the FTS table. file: [5774a7ee] check-in: [051c756c] user: dan branch: trunk, size: 108576
00:54
Changes to #ifdefs so that the build goes correctly if the only FTS macro defined is SQLITE_ENABLE_FTS4. file: [b0df3941] check-in: [a0b43a32] user: drh branch: trunk, size: 106410
2011-06-15
08:30
Add an interface to better test incremental loading of doclists by FTS4. Also some tests for this and term prefix queries. file: [4c008450] check-in: [7a381313] user: dan branch: broken-build, size: 106410
2011-06-08
18:39
Fix various issues to do with deferred tokens, NEAR expressions and matchinfo(). file: [bc24cec3] check-in: [3972a787] user: dan branch: fts3-prefix-search, size: 106133
2011-06-06
14:51
Modify fts3rnd.test to run tests for both "ORDER BY docid ASC" and "ORDER BY docid DESC" with both order=ASC and order=DESC FTS tables. Fixes for some bugs found. file: [ed525afd] check-in: [89f2f482] user: dan branch: fts3-prefix-search, size: 109780
2011-06-04
20:04
Allow the "order=DESC" and "order=ASC" parameters in FTS4 "CREATE VIRTUAL TABLE" statements. Tables created with "order=DESC" store all doclists in descending order, which allows optimizations normally applied to "ORDER BY docid ASC" queries to be used with "ORDER BY docid DESC" queries instead. file: [d7eded6f] check-in: [f6a0193f] user: dan branch: fts3-prefix-search, size: 109740
2011-06-03
18:00
FTS changes: Remove unreachable code. Fix bugs. When processing a large doclist incrementally, read from disk incrementally too. file: [c2f041d7] check-in: [a4c7e282] user: dan branch: fts3-prefix-search, size: 106886
2011-06-02
19:57
Changes to improve performance and support LIMIT clauses on fts3 tables. This branch is unstable for now. file: [b1455474] check-in: [28149a78] user: dan branch: fts3-prefix-search, size: 103494
2011-05-28
15:57
Minor changes made while planning a larger change. file: [ed58c53f] check-in: [84097a4c] user: dan branch: fts3-prefix-search, size: 99497
2011-05-25
19:17
If a prefix index of size N is not present, use a prefix index of size N+1 along with the terms index for queries for prefixes of length N. file: [beaa93bc] check-in: [cc83991c] user: dan branch: fts3-prefix-search, size: 99404
18:34
Change fts4 so that the prefix= parameter is passes a comma-separated list of integers. For each integer N, a separate index of all prefixes of length N bytes is created. file: [416b367f] check-in: [be59bf49] user: dan branch: fts3-prefix-search, size: 99422
2011-05-24
18:49
If the fts4 option prefix=1 is specified, have the fts4 module maintain an index of prefixes as well as terms. file: [0fd6a55c] check-in: [b5bdc639] user: dan branch: fts3-prefix-search, size: 99254
2011-05-17
15:56
Add extended return code SQLITE_CORRUPT_VTAB. Returned when the tcontents of the sqlite tables used internally by a virtual table module are invalid or inconsistent. file: [b50181e5] check-in: [8844e8bf] user: dan branch: trunk, size: 94817
2011-05-04
16:30
Fix a couple of compiler warnings in the FTS code. file: [7d6d904b] check-in: [1a113359] user: dan branch: vtab-conflict, size: 94792
2011-04-27
16:02
Add documentation for the newly introduced sqlite3_vtab_config() and on_conflict() API functions. Test that encountering an SQLITE_MISMATCH in fts3 does not corrupt the full text index. file: [21ddcc47] check-in: [abdd70ae] user: dan branch: vtab-conflict, size: 94846
2011-04-26
19:21
Extra tests for fts3. And fixes for conflict-handling related problems in fts3. file: [b4dfd76d] check-in: [fb4a3558] user: dan branch: vtab-conflict, size: 94688
2011-04-25
18:49
Add support for on conflict clauses to fts3/fts4. file: [388a7c71] check-in: [6d2633a6] user: dan branch: vtab-conflict, size: 93798
2011-04-19
06:43
Avoid passing NULL to the xOpen method of an FTS3/4 tokenizer. file: [c0af09a0] check-in: [0dd09fc0] user: dan branch: trunk, size: 91829
2011-02-04
18:56
Change fts4aux to (additionally) report on term frequency in individual columns of an fts table. file: [813495ed] check-in: [3996f92a] user: dan branch: trunk, size: 91624
2011-02-02
17:30
Optimize handling of equality and range constraints on the "term" column of an fts4aux table. file: [8cf14b0e] check-in: [386701de] user: dan branch: trunk, size: 91638
2011-02-01
17:55
Fix a case in fts4 where a corrupt %_stat table could lead to a crash. file: [58a4d891] check-in: [4ade96ce] user: dan branch: fts4aux, size: 91557
16:34
Add virtual table module "fts4aux", used to inspect the full-text index of an fts4 table directly. Also add the "compress" and "uncompress" fts4 options. file: [ae896d78] check-in: [b010ddcc] user: dan branch: fts4aux, size: 91500
2011-01-13
11:20
Fix a couple of crashes in fts3 that can occur if the database contents are inconsistent. file: [3eea26b9] check-in: [811e12cd] user: dan branch: trunk, size: 98343
10:58
Fix a segfault that can occur in matchinfo if an fts4 table contains mostly zero-length documents. Specifically, if the table contains more rows than it does bytes of text. file: [9f3545ae] check-in: [fe904766] user: dan branch: trunk, size: 98368
2010-12-24
15:49
Reduce the number of calls to sqlite3_realloc() made by fts3 when querying for position information of a term prefix. file: [1fd09885] check-in: [7088d945] user: dan branch: trunk, size: 98307
2010-12-01
15:36
Fix some warnings under MSVC in fts3 module. file: [13012755] check-in: [c7771c0b] user: shaneh branch: trunk, size: 98305
2010-11-26
16:49
Fix various compiler warnings. file: [9d254e1b] check-in: [c412f612] user: drh branch: trunk, size: 98300
2010-11-24
19:26
Add code for the matchinfo 'longest common substring' feature. file: [b4e5b4c7] check-in: [71011a4f] user: dan branch: fts3-experimental, size: 98515
11:51
Remove some unused code from fts3. Add tests to fts3matchinfo.test. file: [9b2db92b] check-in: [ae40b34c] user: dan branch: fts3-experimental, size: 98454
2010-11-23
19:16
Experimental changes to fts3 function matchinfo(). file: [f5e7db79] check-in: [9cf0f2b7] user: dan branch: fts3-experimental, size: 101014
2010-11-02
17:41
Changes to allow FTS4 tables to be created without the underlying %_docsize table (in order to save space). file: [3d12dad6] check-in: [31989b18] user: dan branch: trunk, size: 99601
2010-10-30
15:21
Test cases and minor changes to make fts3 more robust in the face of a corrupt database. file: [01478ee6] check-in: [b7702905] user: dan branch: trunk, size: 99586
2010-10-29
18:45
Add extra test cases and changes to fts3 to avoid crashing on a corrupt database. file: [f2f5caed] check-in: [252f0e45] user: dan branch: trunk, size: 99475
2010-10-27
16:52
Fix a buffer overread in fts3 that can occur if the database is corrupt. file: [a9189fa8] check-in: [84194c41] user: dan branch: experimental, size: 98778
10:55
In fts4, store the total number of bytes of for all records in the table in the %_stat table. file: [943216b1] check-in: [941647d1] user: dan branch: experimental, size: 98408
2010-10-23
19:07
Fixes for the matchinfo() function related to FTS4 common token handling. file: [1b921190] check-in: [deb80eac] user: dan branch: experimental, size: 97854
2010-10-22
16:44
Add missing comments and fix compiler warnings in new FTS3/4 code. Other minor fixes too. file: [54ddeed7] check-in: [1c9c70fe] user: dan branch: experimental, size: 97843
2010-10-20
18:56
Updates to FTS4 to improve performance and make more accurate cost estimates for prefix terms. file: [be47d30c] check-in: [d0a450ce] user: dan branch: experimental, size: 97281
2010-10-19
14:08
Experimental changes to fts4 to try to selectively avoid loading very large doclists. file: [29b63a98] check-in: [5ae0ba44] user: dan branch: experimental, size: 97351
2010-09-17
15:28
Have all FTS3 queries obtain a read or write table-lock at the shared-cache level before doing anything else. file: [97a583b9] check-in: [018e82c7] user: dan branch: trunk, size: 88824
2010-03-19
13:59
Rewrite a couple of queries used internally by FTS3 to take advantage of the "SELECT max(x) FROM ..." optimization. file: [4b21a0c6] check-in: [b7e42ae7] user: dan branch: trunk, size: 87494
2010-02-26
01:46
Minor changes to silence some compiler warnings with MSVC. file: [bff9bea0] check-in: [4927c62d] user: shaneh branch: trunk, size: 87483
2010-02-03
19:55
Add a new full-text search variant that tracks the total number of documents and document sizes, to make ranking search results easier. Currently called FTS4. file: [26b1151e] check-in: [1b6e6094] user: drh branch: trunk, size: 87429
2009-12-29
10:32
Fix a bug triggered by optimizing an FTS3 table when there are no segments on disk but pending terms in the hash table. file: [ccb92226] check-in: [a3b50e4f] user: dan branch: trunk, size: 78808
2009-12-14
14:49
Fix a broken assert() in fts3_write.c. Also fix a couple of compiler warnings in fts3 code. file: [2847b13d] check-in: [a730a05b] user: dan branch: trunk, size: 78814
2009-12-12
16:04
Further fts3 coverage tests. file: [c2e0ef39] check-in: [d2a8c0f6] user: dan branch: trunk, size: 78805
13:16
Extra tests for coverage of fts3 code. file: [8fa73906] check-in: [eee921a9] user: dan branch: trunk, size: 78649
09:51
Add coverage test cases for fts3. file: [a8f2eb04] check-in: [8fcb0478] user: dan branch: trunk, size: 77708
2009-12-11
16:03
Change the fts3 test interface used to configure the advisory node size parameter. file: [3f49f2cd] check-in: [87fc0ce1] user: dan branch: trunk, size: 77544
12:29
Rationalize some code in fts3 used by optimize operations, queries of the pending-terms hash table and segment merges. Add the "INSERT INTO tbl(tbl) VALUES('optimize')" syntax. file: [883db716] check-in: [29476da3] user: dan branch: trunk, size: 77396
2009-12-10
16:04
Changes to fts3 to avoid flushing data to disk within a SELECT statement. file: [ee50b8fe] check-in: [48c0db0e] user: dan branch: trunk, size: 75993
2009-12-09
14:39
Improve test coverage of fts3.c. file: [c7d549ac] check-in: [56b6432f] user: dan branch: trunk, size: 72821
2009-12-08
19:05
Add tests to improve coverage of fts3. Associated bugfixes. file: [643be9c7] check-in: [f0eac417] user: dan branch: trunk, size: 72796
2009-12-03
17:36
Fix an incorrect assert() in fts3.c. Add further fts3 tests. file: [ec51fb68] check-in: [75863c2d] user: dan branch: trunk, size: 72759
06:26
Updates to FTS3 to correct compiler warnings under MSVC. file: [6c59b1d6] check-in: [37495b55] user: shaneh branch: trunk, size: 72851
2009-12-02
14:44
Clear the Pager.dbModified flag when unlocking the database. Assert that it is clear when locking the database. file: [5d384944] check-in: [d17ec16b] user: dan branch: trunk, size: 72809
2009-12-01
13:48
Open a savepoint within the FTS3 optimize() function. file: [1d75e1be] check-in: [4924fbb2] user: dan branch: trunk, size: 72893
12:00
Fix a segfault that can occur when querying an empty FTS3 table. Also restore the rowid/docid conflict handling to work as it did in version 3.6.20. file: [3ca5d8b2] check-in: [c022f66b] user: dan branch: trunk, size: 72627
2009-11-28
21:33
Updates to snippet() and offsets() functions of FTS3 so that they work sanely following an OOM fault. file: [9b35ff96] check-in: [b939a37a] user: drh branch: trunk, size: 72277
12:40
Fix a bug introduced by the fts3 refactoring (segfault when creating a table with zero module args). Also a fix to handle an OOM error. file: [f1bffadc] check-in: [eada284b] user: dan branch: trunk, size: 72228
2009-11-21
03:03
Add some missing comments to fts3 files. No source code changes. file: [ac1c03d0] check-in: [b6402b20] user: dan branch: trunk, size: 72195
2009-11-20
17:23
Merge leaf accidentally created by [1c4984c62f]. file: [69e6fb5a] check-in: [cae949ce] user: dan branch: trunk, size: 70960
05:05
Improve comments and other things in fts3_write.c. file: [6b9b4fd9] check-in: [1cf0e3cc] user: dan branch: trunk, size: 66144
02:24
Minor optimizations to fts3 code. file: [3c8a5d91] check-in: [b456eacb] user: dan branch: trunk, size: 63472
2009-11-19
15:25
Fix some fts3 related issues with the autoconf and amalgamation build systems. file: [9048d3c1] check-in: [3b179247] user: dan branch: fts3-refactor, size: 62781
00:15
Fix problems introduced into fts3 as part of the refactoring. file: [041f6c4d] check-in: [fa0998e1] user: dan branch: fts3-refactor, size: 62716
2009-11-18
15:35
Add some missing comments and fix some other issues in fts3 code. file: [ec6bbf26] check-in: [2fe579e7] user: dan branch: fts3-refactor, size: 62376
2009-11-17
12:52
Improvements to the way fts3 reads the full-text index. file: [edf123f9] check-in: [45c051e7] user: dan branch: fts3-refactor, size: 59981
2009-11-13
17:36
Start reworking fts3 code to match the rest of SQLite (code conventions, malloc-failure handling etc.). file: [4285a280] check-in: [30a92f11] user: dan branch: fts3-refactor, size: 57405 Added