/ History for ext/fts5/fts5_main.c
Login

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

History for ext/fts5/fts5_main.c

2020-07-29
16:18
[3bffd3ce] part of check-in [a80ae2c9] Dozens and dozens of typo fixes in comments. This change adds no value to the end product and is disruptive, so it is questionable whether or not it will ever land on trunk. (check-in: [a80ae2c9] user: drh branch: typos, size: 87999)
2019-12-26
14:36
[e881a2ea] part of check-in [a5d7f5d2] Fix an assert() in fts5 that could fail if an xSavepoint() call on another vtab fails. Fix for [167b2aac] . (check-in: [a5d7f5d2] user: dan branch: trunk, size: 87998)
2019-11-23
08:36
[9db1f173] part of check-in [de6637e1] Fix a memory leak in fts5 error handling code. (check-in: [de6637e1] user: dan branch: trunk, size: 87785)
2019-11-21
14:20
[dad126d1] part of check-in [2eb99732] Prevent direct and indirect recursive content= options in fts3/4 and fts5. (check-in: [2eb99732] user: dan branch: trunk, size: 87675)
2019-10-20
08:26
[1b2d41fd] part of check-in [b528bdcd] Fix a resource leak in fts5 that could occur if an auxiliary function is called from within a query that does not use the full-text index. (check-in: [b528bdcd] user: dan branch: trunk, size: 86995)
2019-09-13
13:23
[bf637030] part of check-in [090cd07d] Ensure that the idxStr for FTS5 is always zero-terminated. Fix for check-in [9d418a7a491761ee] (check-in: [090cd07d] user: drh branch: trunk, size: 86948)
12:24
[c589c817] part of check-in [a8927d14] Fix harmless compiler warnings. (check-in: [a8927d14] user: drh branch: trunk, size: 86865)
2019-09-12
19:38
[e6db9454] part of check-in [9d418a7a] Allow fts5 to filter on multiple MATCH clauses in a single scan. (check-in: [9d418a7a] user: dan branch: trunk, size: 86934)
2019-09-02
14:46
[15dc14ea] part of check-in [9490683a] Fix a potential crash in fts5 caused by using an auxiliary function on a "special" query like '*id' or '*reads'. (check-in: [9490683a] user: dan branch: trunk, size: 86159)
2019-08-20
19:11
[b2c42f1c] part of check-in [00e9a8f2] Fix a problem with fts5 "ORDER BY rank" queries when the fts5 table name requires quoting. (check-in: [00e9a8f2] user: dan branch: trunk, size: 86125)
2019-08-05
12:55
[346a1ec0] part of check-in [b6d52c93] Prevent an fts5 table from being its own content table, or part of a view that is the content table. (check-in: [b6d52c93] user: dan branch: trunk, size: 86121)
2019-04-13
14:07
[abd04720] part of check-in [c28c973a] Fixes for harmless compiler warnings. (check-in: [c28c973a] user: drh branch: trunk, size: 85969)
2019-03-20
05:45
[de317d98] part of check-in [1c0fe5b5] Fix various harmless compiler warnings seen with MSVC. (check-in: [1c0fe5b5] user: mistachkin branch: noWarnings, size: 85959)
2019-02-04
16:25
[95d63bbe] part of check-in [b0da6e0d] Fix problems with SAVEPOINT and related commands within transactions on a corrupt database that include fts5 or some other virtual tables. (check-in: [b0da6e0d] user: dan branch: trunk, size: 85943)
2019-01-29
15:30
[23956584] part of check-in [9d58a157] Avoid a crash when the fts5 snippet() function (or similar) is used with a special query pattern, like '*id' or '*reads'. (check-in: [9d58a157] user: dan branch: trunk, size: 85942)
2019-01-22
21:17
[df4ba0a9] part of check-in [1abc4415] Fix a buffer overrun that could occur in fts5 if a prefix query is made on a corrupt database. (check-in: [1abc4415] user: dan branch: trunk, size: 85901)
2019-01-17
17:39
[4a7ebaa5] part of check-in [49956395] Fix problems with joining two or more fts5_vocab tables that access the same underlying fts5 table. (check-in: [49956395] user: dan branch: trunk, size: 85741)
2019-01-15
15:18
[55236fb7] part of check-in [4a9483f8] Have fts5 reject attempts to insert a non-integer, non-null value into a rowid column with SQLITE_MISMATCH. (check-in: [4a9483f8] user: dan branch: trunk, size: 85726)
2019-01-14
15:35
[ea863c28] part of check-in [9cd64ce4] Fix a problem causing a crash if an fts5vocab table was created to query an fts3/4 FTS index. (check-in: [9cd64ce4] user: dan branch: trunk, size: 85507)
2019-01-08
20:02
[90062ccf] part of check-in [ca67f2ec] Use 64-bit math to compute the sizes of memory allocations in extensions. (check-in: [ca67f2ec] user: drh branch: trunk, size: 85481)
2018-11-06
14:03
[287a1a56] part of check-in [d890c658] 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. (check-in: [d890c658] user: drh branch: read-only-shadow, size: 85445)
2018-11-05
23:01
[5318b205] part of check-in [31942b3d] 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. (check-in: [31942b3d] user: drh branch: read-only-shadow, size: 85496)
2018-09-05
17:45
[7e52868e] part of check-in [f804336f] Fix some test script errors. And an incorrect assert() in fts5. (check-in: [f804336f] user: dan branch: alter-table-rename-column, size: 85025)
2018-09-03
17:11
[2ee492d7] part of check-in [f1138a38] Ensure that FTS5 queries of the form "WHERE rowid BETWEEN ? AND ? AND tbl MATCH ? ORDER BY rank" do rowid filtering before sorting. (check-in: [f1138a38] user: dan branch: trunk, size: 85024)
2018-04-09
14:26
[da46761a] part of check-in [a0ca4ddb] Fix the fts5 xBestIndex method so that it is not confused by "IS", "!=", "REGEXP", "GLOB" or "LIKE" operators. Fix for ticket [2b8aed9f]. (check-in: [a0ca4ddb] user: dan branch: trunk, size: 84758)
2017-07-17
15:38
[24868f88] part of check-in [bc78235f] Improved the interface to the fts5() extension mechanism for enhanced security. (check-in: [bc78235f] user: drh branch: branch-3.20, size: 84362)
2017-06-28
17:29
[c6412f30] part of check-in [942c3ef8] 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. (check-in: [942c3ef8] user: drh branch: dbconfig-prepare-flags, size: 84542)
2017-06-01
00:54
[f32b3b87] part of check-in [4a25c588] 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. (check-in: [4a25c588] user: drh branch: prepare_v3, size: 84419)
2017-04-13
09:45
[1ba0e780] part of check-in [6f54ffd1] Allow a user column name to be used on the LHS of a MATCH operator in FTS5. (check-in: [6f54ffd1] user: dan branch: trunk, size: 84306)
2017-04-08
09:12
[24cafdc4] part of check-in [a921ada8] Have fts5 close any open blob-handle when a new savepoint is opened. This ensures that fts5 does not prevent DROP TABLE statements (which always open a savepoint) from succeeding. (check-in: [a921ada8] user: dan branch: trunk, size: 83816)
2016-05-30
08:28
[f8528144] part of check-in [64ca1a83] Fix an FTS5 problem (segfault or incorrect query results) with "... MATCH 'x OR y' ORDER BY rank" queries when either token 'x' or 'y' is completely absent from the dataset. (check-in: [64ca1a83] user: dan branch: trunk, size: 83825)
2016-03-26
20:11
[1e1e6e2d] part of check-in [53b80a6d] Fix a problem with OOM handling when setting an fts5 configuration option. (check-in: [53b80a6d] user: dan branch: fts5, size: 84207)
2016-03-16
19:48
[b4a0fc5b] part of check-in [33ef2210] Have fts5 cache the decoded structure of fts5 indexes in memory. Use "PRAGMA data_version" to detect stale caches. (check-in: [33ef2210] user: dan branch: fts5-data-version, size: 83867)
2016-03-09
20:54
[b8501e1a] part of check-in [55667144] Add an incremental optimize capability to fts5. Make the 'merge' command independent of the 'automerge' settings. (check-in: [55667144] user: dan branch: trunk, size: 83564)
2016-02-17
14:48
[db24ac71] part of check-in [87e6e225] Remove the "#ifdef SQLITE_TEST" condition from fts5_test_mi.c. Update fts5_main.c so that if SQLITE_FTS5_TEST_MI is defined when it is built the fts5_test_mi.c entry point is automatically called. This makes it easier to build versions of fts5 that include the matchinfo() demo by default. (check-in: [87e6e225] user: dan branch: trunk, size: 83588)
2016-02-11
17:01
[0e01ead4] part of check-in [bc3f7900] Handle parser stack overflow when parsing fts5 query expressions. Fix some compiler warnings in fts5 code. (check-in: [bc3f7900] user: dan branch: trunk, size: 83214)
2016-02-05
19:18
[6e23df90] part of check-in [ca91bd8a] Further streamlining of fts5 prefix query code. (check-in: [ca91bd8a] user: dan branch: trunk, size: 82691)
2016-02-01
20:12
[7e8a5f27] part of check-in [2334e882] Improve performance of fts5 queries. (check-in: [2334e882] user: dan branch: trunk, size: 82679)
2016-01-23
18:51
[3886bbfc] part of check-in [72d53699] Fix an fts5 problem with using both xPhraseFirst() and xPhraseFirstColumn() within a single statement in detail=col mode. (check-in: [72d53699] user: dan branch: fts5-perf, size: 82645)
2016-01-16
18:58
[833db0a3] part of check-in [de77d602] Add further tests for fts5. Fix some problems with detail=col mode and auxiliary functions. (check-in: [de77d602] user: dan branch: trunk, size: 82655)
2016-01-15
19:54
[1d116f5c] part of check-in [3b72df40] Rationalize some code in fts5_storage.c. Add tests to cover recently added branches in fts5. (check-in: [3b72df40] user: dan branch: trunk, size: 82487)
2016-01-14
14:15
[488ceecd] part of check-in [5a343cc0] Fix compiler warnings in fts5. (check-in: [5a343cc0] user: dan branch: trunk, size: 82439)
2016-01-06
19:35
[03bd44e4] part of check-in [e7dcd013] Merge latest trunk changes into this branch. (check-in: [e7dcd013] user: dan branch: fts5-offsets, size: 82592)
2016-01-05
21:04
[cd5f6f0b] part of check-in [fd217fdb] Rationalize and extend some fts5 test code. Fix bugs revealed by the same. (check-in: [fd217fdb] user: dan branch: fts5-offsets, size: 82622)
2016-01-04
19:12
[15c8b702] part of check-in [ee38f9df] Fix an OOM handling problem in fts5 detail=none and detail=col modes. Also a bug in the xInst() API when used with detail=col and column filtering expressions. Update the matchinfo() test function so that 'b' is fast with detail=col tables. (check-in: [ee38f9df] user: dan branch: fts5-offsets, size: 82538)
2016-01-02
19:01
[f33439bd] part of check-in [6322a1d9] Changes to run many fts5 tests with detail=none and detail=col tables as well as the default detail=full. Also fixes for the bugs uncovered by running said tests. (check-in: [6322a1d9] user: dan branch: fts5-offsets, size: 82243)
2015-12-29
19:35
[23f3912f] part of check-in [8c30605b] Add the xPhraseFirstColumn() and xPhraseNextColumn() API functions to fts5. For iterating through the set of columns that contain intances of a phrase. (check-in: [8c30605b] user: dan branch: fts5-offsets, size: 81262)
2015-12-28
19:55
[a71db659] part of check-in [228b4d10] Change the name of the offsets=0 option to "detail=column". Have the xInst, xPhraseFirst and other API functions work by parsing the original text for detail=column tables. (check-in: [228b4d10] user: dan branch: fts5-offsets, size: 79910)
2015-12-23
16:42
[e11b5257] part of check-in [5d44d4a6] Fix some harmless gcc compiler warnings. Mostly in fts5, but also two in the core code. (check-in: [5d44d4a6] user: dan branch: trunk, size: 78452)
2015-12-22
18:54
[b7d6540c] part of check-in [69bffc16] Updates so that fts5 API functions xInst, xPhraseFirst and xPhraseNext work with the offsets=0 option. (check-in: [69bffc16] user: dan branch: fts5-offsets, size: 78966)
2015-12-16
23:30
[ef046999] part of check-in [1d0e6aa1] Fix even more harmless compiler warnings. (check-in: [1d0e6aa1] user: mistachkin branch: msvcWarn, size: 78482)
2015-11-07
01:33
[7581280e] part of check-in [78bc42e6] Merge recent enhancements and bug fixes from trunk. (check-in: [78bc42e6] user: drh branch: sessions, size: 78467)
2015-11-06
12:50
[0569cd9f] part of check-in [33e6606f] Have fts5 load its configuration from the xConnect() method is invoked. This ensures that the very first query run uses the correct value of the 'rank' option. (check-in: [33e6606f] user: dan branch: trunk, size: 78481)
2015-10-27
20:04
[39358d3d] part of check-in [a85c2a47] Have contentless and external content fts5 tables ignore "OR REPLACE" conflict handling. (check-in: [a85c2a47] user: dan branch: trunk, size: 77744)
2015-10-17
19:49
[520a2913] part of check-in [6020d96a] Handle equality and range constraints on the "term" column of fts5vocab tables. Also have the same module report columns using names instead of indexes. (check-in: [6020d96a] user: dan branch: trunk, size: 77656)
2015-10-14
21:08
[d3fde32e] part of check-in [f4de6d45] Tests and minor fixes to improve coverage of FTS5 code. (check-in: [f4de6d45] user: dan branch: trunk, size: 77511)
2015-10-12
19:12
[bf43550b] part of check-in [1c20c1c2] Further tweaks to improve fts5 prefix query performance. (check-in: [1c20c1c2] user: dan branch: trunk, size: 77481)
2015-10-10
15:57
[36fa4fe8] part of check-in [35e6248a] Remove another instance of strcpy() from FTS5, to mollify OpenBSD. (check-in: [35e6248a] user: drh branch: trunk, size: 77485)
15:11
[83315036] part of check-in [bc24a5bb] Omit the use of strcpy() in FTS5 since OpenBSD hates strcpy(). (check-in: [bc24a5bb] user: drh branch: trunk, size: 77380)
2015-10-09
11:09
[5125711e] part of check-in [6ebac32d] Makefile and fts5 changes so that fts5 works with main.mk. Still does not work with Makefile.in. (check-in: [6ebac32d] user: dan branch: amalg-json1-fts5, size: 77271)
2015-10-08
20:40
[d159079e] part of check-in [0d7f301f] Fix further fts5 compilation issues. (check-in: [0d7f301f] user: dan branch: amalg-json1-fts5, size: 76799)
20:11
[77721fed] part of check-in [e9e76e12] Fix a couple of errors in fts5 compilation. This branch still does not build with -Wall -Werror. (check-in: [e9e76e12] user: dan branch: amalg-json1-fts5, size: 76772)
19:29
[1ae4d7ec] part of check-in [d820a1bd] First attempt to add json1 and fts5 to the amalgamation. This check-in does not compile. (check-in: [d820a1bd] user: drh branch: amalg-json1-fts5, size: 76770)
2015-10-07
17:06
[aa968289] part of check-in [13adcd03] Fix harmless compiler warning in FTS5. (check-in: [13adcd03] user: mistachkin branch: trunk, size: 76610)
2015-10-03
15:38
[fe5243d6] part of check-in [41d17d9e] Update fts5 to support the table function syntax. "... FROM fts5_tbl WHERE fts5_tbl MATCH ?1 AND rank MATCH ?1" can now be written "FROM fts5_tbl(?1, ?2)". (check-in: [41d17d9e] user: dan branch: trunk, size: 76630)
2015-10-02
20:04
[fd9ab880] part of check-in [5c83b9db] Update fts5 to avoid using a statement journal for UPDATE and DELETE operations that affect at most a single row. (check-in: [5c83b9db] user: dan branch: trunk, size: 76502)
2015-09-17
09:48
[53116cff] part of check-in [e8ed62f8] Fix a crash in FTS5 caused by specifying NULL as the rhs of a MATCH operator. (check-in: [e8ed62f8] user: dan branch: trunk, size: 73765)
2015-09-11
14:15
[3fa906f6] part of check-in [0dc43611] Fix some compiler warnings in fts5 code. (check-in: [0dc43611] user: dan branch: trunk, size: 73734)
2015-09-09
08:15
[4b04c934] part of check-in [0eb2b952] Fix a bug in preprocessor macros within fts5_main.c. (check-in: [0eb2b952] user: dan branch: fts5-incompatible, size: 73697)
2015-09-08
19:55
[3ec19f23] part of check-in [00d99006] Remove the 0x00 terminators from the end of fts5 doclists stored on disk. (check-in: [00d99006] user: dan branch: fts5-incompatible, size: 73696)
2015-09-02
08:22
[e9d08924] part of check-in [cf3e45e7] Fix a problem with fts5 synonyms and the xQueryPhrase() auxiliary function API. (check-in: [cf3e45e7] user: dan branch: fts5-incompatible, size: 73564)
2015-08-29
15:44
[b00834ac] part of check-in [fc718684] Another change to the fts5 tokenizer API. (check-in: [fc718684] user: dan branch: fts5-incompatible, size: 73563)
2015-08-28
19:56
[7afdb84a] part of check-in [90b85b42] Change the fts5 tokenizer API to allow more than one token to occupy a single position within a document. (check-in: [90b85b42] user: dan branch: fts5-incompatible, size: 73515)
2015-08-12
15:36
[fc47ad73] part of check-in [efb7c9c5] Minor optimization for fts5 API xInst(). (check-in: [efb7c9c5] user: dan branch: trunk, size: 73424)
12:11
[c5ff6eb7] part of check-in [f7682435] Add the xPhraseFirst() and xPhraseNext() fts5 APIs, for faster iteration through a single phrases position list. Also optimize xInst() and xInstCount() a bit. (check-in: [f7682435] user: dan branch: trunk, size: 73446)
2015-08-05
19:35
[4c8af001] part of check-in [9e3aafe4] Add tests for the matchinfo-like test function. Fix problems found in test and fts5 code by doing so. (check-in: [9e3aafe4] user: dan branch: trunk, size: 72272)
07:43
[dbf7a80c] part of check-in [dffd358f] Remove all references to "docid" within fts5 source code and comments. Replace with "rowid". (check-in: [dffd358f] user: dan branch: trunk, size: 71911)
2015-07-31
17:48
[4518fa10] part of check-in [54a771fe] Remove a duplicate "typedef struct Fts5Global Fts5Global;" from fts5_main.c (duplicate is in fts5Int.h). (check-in: [54a771fe] user: dan branch: trunk, size: 71911)
2015-07-16
20:17
[0de7ba81] part of check-in [e9bf275c] Fix compiler warnings in fts5 code. (check-in: [e9bf275c] user: dan branch: trunk, size: 71949)
2015-07-14
17:18
[8f279999] part of check-in [3de030c9] Fix some harmless compiler warnings. (check-in: [3de030c9] user: mistachkin branch: trunk, size: 71945)
2015-07-09
20:46
[2e43726b] part of check-in [b2de77a0] Improve the performance of docid merges in fts5. (check-in: [b2de77a0] user: dan branch: trunk, size: 71933)
2015-07-03
19:13
[37b0055c] part of check-in [3df4af5d] Speed up eof checks on fts5 cursors. (check-in: [3df4af5d] user: dan branch: trunk, size: 72200)
17:14
[f35f445d] part of check-in [b9b0c1e5] Avoid freeing the array of instance matches each time the fts5 xNext() method is called. (check-in: [b9b0c1e5] user: dan branch: trunk, size: 72108)
2015-07-02
18:16
[3390a455] part of check-in [ec257348] Add fts5_source_id() SQL function, similar to sqlite_source_id(). (check-in: [ec257348] user: dan branch: trunk, size: 71986)
15:52
[c24ee96e] part of check-in [7819002e] Remove "#ifdef SQLITE_ENABLE_FTS5" from individual fts5 source files. Add a single "#if !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_FTS5)" to fts5.c. (check-in: [7819002e] user: dan branch: trunk, size: 71476)
2015-06-26
04:34
[c5b2a219] part of check-in [ef2052f8] Initial changes to get FTS5 working with MSVC. (check-in: [ef2052f8] user: mistachkin branch: fts5Msvc, size: 71361)
2015-06-25
20:10
[35e90d3d] part of check-in [46e86b06] Add a script to combine all fts5 code into a single file - fts5.c - that can be used to build an SQLite loadable extension. (check-in: [46e86b06] user: dan branch: fts5, size: 71362) Renamed from ext/fts5/fts5.c