/ File History
Login

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

History of ext/fts5/fts5_storage.c

2019-12-20
19:41
[3ecda8ed] part of check-in [a1ba9a37] Fix two more cases in fts5 where sqlite3_value_bytes() was being called before sqlite3_value_text(). Fix for e431c355. (check-in: [a1ba9a37] user: dan branch: trunk, size: 33161)
14:08
[517aae1a] part of check-in [2bbd014c] Fix harmless compiler warnings. (check-in: [2bbd014c] user: drh branch: trunk, size: 33059)
13:24
[87cd8365] part of check-in [c16305eb] Ensure fts5 consistently calls sqlite3_value_text() before sqlite3_value_bytes(). This matters when storing blobs in fts5 tables within utf-16 databases. Fix for [cf36cb4e02]. (check-in: [c16305eb] user: dan branch: trunk, size: 33046)
2019-10-08
13:34
[167e3d8f] part of check-in [238e0835] Fix problems with using the fts5 'rebuild' command inside a transaction that contains other updates of the same table. Fix for [e258f008]. (check-in: [238e0835] user: dan branch: trunk, size: 33011)
2019-08-05
12:55
[801b4e3c] 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: 32987)
2019-03-20
05:45
[b24f6916] part of check-in [1c0fe5b5] Fix various harmless compiler warnings seen with MSVC. (check-in: [1c0fe5b5] user: mistachkin branch: noWarnings, size: 32933)
2019-01-19
15:55
[57e3f2b1] part of check-in [928e6221] Avoid a division-by-zero error in fts5 caused by a corrupt database. (check-in: [928e6221] user: dan branch: trunk, size: 32925)
2019-01-08
20:02
[00db5029] 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: 32533)
2019-01-05
07:17
[0455c866] part of check-in [444c7c99] Fix two more problems with corrupt database handling in fts5. (check-in: [444c7c99] user: dan branch: trunk, size: 32512)
2018-12-21
19:29
[5862f1b7] part of check-in [25666e3d] 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. (check-in: [25666e3d] user: dan branch: prepare-no-vtab, size: 32445)
2018-11-05
23:01
[d35ccef4] 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: 32446)
2018-02-07
18:02
[4bec8a1b] part of check-in [2a5f813b] 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. (check-in: [2a5f813b] user: dan branch: trunk, size: 32394)
2017-06-28
17:29
[a89dc2eb] 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: 32378)
2017-06-01
00:54
[fb5ef3c2] 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: 32320)
2017-04-08
09:12
[77509860] 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: 32263)
2017-02-27
17:06
[8f0e65cb] part of check-in [2b210d69] Improve performance of fts5 writes by writing the "averages" record once at the end of each transaction instead of every time the table is updated. (check-in: [2b210d69] user: dan branch: trunk, size: 32302)
14:52
[1db0b6f8] part of check-in [fe41bb56] 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. (check-in: [fe41bb56] user: dan branch: set-last-insert-rowid, size: 32493)
2016-07-15
19:17
[de0ed8a0] part of check-in [d0a1cf1c] Add the largely untested SQLITE_FTS5_NO_WITHOUT_ROWID compile time option to fts5. For building a dynamically loadable extension that does not use WITHOUT ROWID. (check-in: [d0a1cf1c] user: dan branch: trunk, size: 32347)
2016-03-26
20:11
[e0aa8509] 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: 32088)
2016-03-23
15:04
[3309c6a8] part of check-in [70fc69ee] Explicitly limit the size of fts5 tokens to 32768 bytes. (check-in: [70fc69ee] user: dan branch: trunk, size: 32289)
2016-03-21
15:30
[98e31290] part of check-in [902f2217] Have fts5 cache the structure of its index in main memory. Use "PRAGMA data_version" to figure out when this cache should be invalidated. (check-in: [902f2217] user: dan branch: trunk, size: 32159)
2016-03-18
00:39
[2a38c6fa] part of check-in [b199637d] Fix FTS5 so that it works with SQLITE_OMIT_AUTORESET. (check-in: [b199637d] user: drh branch: trunk, size: 32068)
2016-03-16
19:48
[a3361410] 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: 32135)
2016-02-11
17:01
[f8343db9] 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: 32044)
2016-01-23
18:51
[2a1f44de] 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: 31969)
2016-01-15
19:54
[fb2eaec3] 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: 31974)
2016-01-06
19:35
[f7b2d330] part of check-in [e7dcd013] Merge latest trunk changes into this branch. (check-in: [e7dcd013] user: dan branch: fts5-offsets, size: 32884)
2015-12-31
18:39
[771dd0fd] part of check-in [3a1df69e] Fix the fts5 integrity-check code so that it works with detail=none tables. (check-in: [3a1df69e] user: dan branch: fts5-offsets, size: 32879)
2015-12-28
19:55
[076a3356] 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: 32365)
2015-12-23
16:42
[57c636d8] 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: 31352)
2015-12-21
18:45
[14e0bb65] part of check-in [609a0bc7] Fix an fts5 integrity-check problem that affects offsets=0 tables with prefix indexes. (check-in: [609a0bc7] user: dan branch: fts5-offsets, size: 32351)
2015-12-17
20:36
[0dc37a61] part of check-in [40b5bbf0] Add the "offsets=0" option to fts5, to create a smaller index without term offset information. A few things are currently broken on this branch. (check-in: [40b5bbf0] user: dan branch: fts5-offsets, size: 31940)
2015-10-27
20:04
[9ea3d921] 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: 31347)
2015-10-20
15:49
[8038a54a] part of check-in [e979e2cc] Initialize variables in the fts5 integrity-check code to avoid compiler warnings. (check-in: [e979e2cc] user: dan branch: trunk, size: 31279)
2015-10-14
21:08
[9b301157] part of check-in [f4de6d45] Tests and minor fixes to improve coverage of FTS5 code. (check-in: [f4de6d45] user: dan branch: trunk, size: 31271)
20:34
[c0232c81] part of check-in [1c46c194] Fix harmless compiler warnings. (check-in: [1c46c194] user: mistachkin branch: trunk, size: 31525)
2015-10-02
20:04
[df061a5c] 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: 31515)
2015-09-03
14:22
[120f7b14] part of check-in [59ae30b9] Remove some more code from fts5_index.c by consolidating similar functions. (check-in: [59ae30b9] user: dan branch: fts5-incompatible, size: 31629)
11:00
[4b883f59] part of check-in [11b887b1] Fix the fts5 integrity-check so that it works with columnsize=0 tables. (check-in: [11b887b1] user: dan branch: fts5-incompatible, size: 32045)
2015-08-29
18:46
[c888defb] part of check-in [98d07d16] Add a test for an fts5 tokenizer that supports synonyms by adding multiple entries to the fts index. (check-in: [98d07d16] user: dan branch: fts5-incompatible, size: 31765)
15:44
[9820e7b5] part of check-in [fc718684] Another change to the fts5 tokenizer API. (check-in: [fc718684] user: dan branch: fts5-incompatible, size: 31729)
2015-08-28
19:56
[9c263323] 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: 31685)
2015-07-27
11:43
[22ec9b5d] part of check-in [427bf09b] Minor tweak to the SQL schema used by fts5. (check-in: [427bf09b] user: dan branch: fts5-btree-index, size: 31444)
2015-07-15
19:46
[877399c5] part of check-in [862418e3] Use a WITHOUT ROWID table to index fts5 btree leaves. This is faster to query and only slightly larger than storing btree nodes within an intkey table. (check-in: [862418e3] user: dan branch: fts5-btree-index, size: 31374)
2015-07-14
17:18
[1c35a38a] part of check-in [3de030c9] Fix some harmless compiler warnings. (check-in: [3de030c9] user: mistachkin branch: trunk, size: 31244)
2015-07-02
15:52
[4cae85b5] 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: 31236)
2015-06-26
04:34
[3e672a0d] part of check-in [ef2052f8] Initial changes to get FTS5 working with MSVC. (check-in: [ef2052f8] user: mistachkin branch: fts5Msvc, size: 31294)
2015-06-23
15:06
[b2fa301f] part of check-in [ef44c71a] Merge latest trunk changes with this branch. Add tests for columnsize=0. (check-in: [ef44c71a] user: dan branch: fts5, size: 31285)
2015-06-10
10:45
[7e77d1b2] part of check-in [0f7fd513] Fix the fts5 xRename() method. (check-in: [0f7fd513] user: dan branch: fts5, size: 31275)
2015-06-09
20:58
[684ef957] part of check-in [aa12f9d9] Add the "columnsize=" option to fts5, similar to fts4's "matchinfo=fts3". (check-in: [aa12f9d9] user: dan branch: fts5, size: 30285)
2015-06-06
16:28
[770ab523] part of check-in [3a9cb648] Fix handling of fts5 rowid constraints in the absence of a MATCH clause. Add tests to cover recently added branches. (check-in: [3a9cb648] user: dan branch: fts5, size: 29224)
2015-05-30
11:49
[04e67176] part of check-in [e008c3c8] Remove the "#include sqlite3Int.h" from fts5Int.h. (check-in: [e008c3c8] user: dan branch: fts5, size: 28788)
2015-05-18
20:34
[5d2b51ad] part of check-in [4dfe2e58] Improve test coverage of fts5_storage.c. (check-in: [4dfe2e58] user: dan branch: fts5, size: 28629)
2015-05-07
19:29
[cb8b585b] part of check-in [a684b5e2] Change to storing all keys in a single merge-tree structure instead of one main structure and a separate one for each prefix index. This is a file-format change. Also introduce a mechanism for managing file-format changes. (check-in: [a684b5e2] user: dan branch: fts5, size: 28701)
2015-04-28
18:35
[ef60fc9d] part of check-in [8e8136f2] Improve coverage of fts5 tests. (check-in: [8e8136f2] user: dan branch: fts5, size: 28386)
2015-04-27
16:21
[d5c3567b] part of check-in [e38e2bb6] Change the fts5 content= option so that it matches fts5 columns with the underlying table columns by name, not by their position within the CREATE TABLE statement. (check-in: [e38e2bb6] user: dan branch: fts5, size: 28444)
11:31
[87f85986] part of check-in [ffeb3ef3] Further tests for fts5. (check-in: [ffeb3ef3] user: dan branch: fts5, size: 28400)
2015-04-24
19:41
[b3a4cbbc] part of check-in [86309961] Add the "unindexed" column option to fts5. (check-in: [86309961] user: dan branch: fts5, size: 28289)
2015-03-04
08:29
[ac0f0937] part of check-in [a5d5468c] Fix a couple of build problems. (check-in: [a5d5468c] user: dan branch: fts5, size: 28009)
2015-01-23
17:43
[f7c12c9f] part of check-in [51444f67] Fix compression of keys stored on internal segment b-tree nodes by fts5. (check-in: [51444f67] user: dan branch: fts5, size: 27949)
2015-01-21
20:30
[d5672296] part of check-in [c020a291] Further tests and fixes for fts5. (check-in: [c020a291] user: dan branch: fts5, size: 27984)
2015-01-07
19:33
[8bc9e5b6] part of check-in [e749be56] Add the fts5 'optimize' command. (check-in: [e749be56] user: dan branch: fts5, size: 27965)
17:11
[844b9667] part of check-in [0cb2fed5] Add the 'rebuild' and 'delete-all' commands. (check-in: [0cb2fed5] user: dan branch: fts5, size: 27868)
2015-01-06
19:08
[cd72f283] part of check-in [65f0262f] Remove the iPos parameter from the tokenizer callback. Fix the "tokenchars" and "separators" options on the simple tokenizer. (check-in: [65f0262f] user: dan branch: fts5, size: 25904)
14:38
[9b6b8afd] part of check-in [ce6a899b] Further fixes and test cases related to external content tables. (check-in: [ce6a899b] user: dan branch: fts5, size: 25959)
2015-01-05
20:41
[68ce8ec9] part of check-in [047aaf83] Tests and fixes for fts5 external content tables. (check-in: [047aaf83] user: dan branch: fts5, size: 25994)
2015-01-03
20:44
[b95fcca7] part of check-in [17ef5b59] Add support for external content tables to fts5. (check-in: [17ef5b59] user: dan branch: fts5, size: 25675)
2014-12-23
19:18
[13794781] part of check-in [1ac7a8d0] Fix the fts5 bm25() function so that it matches the documentation. (check-in: [1ac7a8d0] user: dan branch: fts5, size: 23143)
2014-12-03
17:27
[bfeedb83] part of check-in [2037dba6] Begin testing fts5 OOM and IO error handling. (check-in: [2037dba6] user: dan branch: fts5, size: 22924)
2014-11-28
20:01
[0198c597] part of check-in [bb4a37b5] Add a cookie mechanism to ensure that the %_config table is re-read as required. (check-in: [bb4a37b5] user: dan branch: fts5, size: 22840)
2014-11-27
20:03
[c28d1a88] part of check-in [83491c56] Add a %_config table to fts5. (check-in: [83491c56] user: dan branch: fts5, size: 22655)
2014-08-12
16:07
[5913aa01] part of check-in [05dfdad4] Cache the value of the "totals" record in memory during transactions. (check-in: [05dfdad4] user: dan branch: fts5, size: 21808)
2014-08-09
18:22
[fa3c8fc4] part of check-in [a14fa876] Fix an uninitialized variable causing a problem during fts5 table initialization. (check-in: [a14fa876] user: dan branch: fts5, size: 20991)
2014-07-31
17:47
[7036cf22] part of check-in [bc14e64b] Try to reuse sorter statements in fts5. Does not work due to circular references on VTable object. (check-in: [bc14e64b] user: dan branch: save_sorter_stmt, size: 21663)
2014-07-25
20:30
[2866e7e1] part of check-in [c4d50428] Add extension apis xRowCount, xQueryPhrase, xSetAuxdata and xGetAuxdata. And a ranking function that uses all of the above. (check-in: [c4d50428] user: dan branch: fts5, size: 20979)
2014-07-23
19:31
[9a2744f4] part of check-in [bdc58fd2] Add a snippet() function to fts5. (check-in: [bdc58fd2] user: dan branch: fts5, size: 20952)
2014-07-21
15:45
[7bb34138] part of check-in [d44d3a85] Fix DELETE and UPDATE operations on fts5 tables. (check-in: [d44d3a85] user: dan branch: fts5, size: 19038)
11:44
[f722b080] part of check-in [19504c41] Fix the xColumnSize() extension API. (check-in: [19504c41] user: dan branch: fts5, size: 18300)
2014-07-19
15:35
[fcf66173] part of check-in [43fcb844] Fixes for the xColumnSize() fts5 extension API. (check-in: [43fcb844] user: dan branch: fts5, size: 15993)
2014-06-24
16:59
[7848d8f8] part of check-in [3515da85] Add simple full-table-scan and rowid lookup support to fts5. (check-in: [3515da85] user: dan branch: fts5, size: 13409)
2014-06-23
11:33
[aa1ff4b6] part of check-in [1e0648dc] Add some code for an experimental fts5 module. Does not work yet. (check-in: [1e0648dc] user: dan branch: fts5, size: 12207) Added