/ Timeline
Login

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

95 check-ins that include changes to files matching 'ext/fts1/*'

2023-07-06
17:55
Merge all recent trunk enhancements into the wal-shm-exceptions branch. (check-in: e59cea2d85 user: drh tags: wal-shm-exceptions)
2023-05-08
21:35
WIP, sync with trunk to pickup 22 weeks of shell library enhancements. (check-in: 00d0d5b105 user: larrybr tags: cli_extension)
2023-02-07
15:29
Merge latest trunk changes into this branch. (check-in: 4d21640c58 user: dan tags: reuse-schema)
2023-02-06
17:35
Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 46e79167b9 user: drh tags: begin-concurrent)
2023-02-02
14:27
Merge latest enhancments into this branch from branch wal2. (Leaf check-in: 5a22010c35 user: dan tags: begin-concurrent-pnu-wal2)
14:21
Merge trunk enhancements into this branch. (check-in: c9b0180203 user: dan tags: wal2)
2023-01-21
12:18
Merge trunk into wasi-patches branch. (check-in: 6fc20d75d4 user: stephan tags: wasi-patches)
2023-01-14
19:53
Omit the long-disused FTS1 and FTS2 implements from the active source tree. The code will persist forever in the source repository, but there is no point in carrying it around in the latest tarballs where it is never used. (check-in: 2bb50d5aed user: drh tags: trunk)
2020-07-29
16:18
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. (Leaf check-in: a80ae2c98b user: drh tags: typos)
2015-10-30
17:17
Merge the sqlite3_db_cacheflush() enhancements and other changes from trunk. (check-in: f2cde4cfc5 user: drh tags: begin-concurrent)
16:50
Merge all the latest enhancements from trunk. (check-in: 395a153ff7 user: drh tags: sessions)
16:23
Merge latest trunk changes, including sqlite3_db_cacheflush(), with this branch. (check-in: 6e4306efaf user: dan tags: apple-osx)
2015-10-29
13:48
Fix uses of ctype functions (ex: isspace()) on signed characters in test programs and in some obscure extensions. No changes to the core. (check-in: 34eb6911af user: drh tags: trunk)
2014-05-08
23:01
Initial attempt to merge in all trunk changes over the previous 1.5 years. This check-in compiles but there are compiler warnings and "make test" segfaults after only running a few test modules. (check-in: 9411d7dc6f user: drh tags: apple-osx)
2014-03-13
15:41
Merge latest trunk changes into this branch. (check-in: d17231b63d user: dan tags: threads)
2013-09-12
00:40
Merge updates from trunk. (Closed-Leaf check-in: fca799f03a user: mistachkin tags: vsix2013)
2013-07-20
00:39
Merge updates from trunk. (check-in: dd4b77c82a user: mistachkin tags: toTypeFuncs)
2013-07-09
13:05
Pull in all the latest changes from trunk. (check-in: af3ca4c6e5 user: drh tags: sessions)
12:36
Modify several extensions to use the new exported function naming. Fix some shared library compilation issues. (check-in: 1e39f85077 user: drh tags: trunk)
2013-07-04
23:53
Modify several extensions to use the new exported function naming. Fix some shared library compilation issues. (Closed-Leaf check-in: f2ab874782 user: mistachkin tags: extRefactor)
2013-05-15
08:00
Merge updates from trunk. (check-in: 6fbad95725 user: mistachkin tags: toTypeFuncs)
2013-03-28
01:19
Merge the changes for the 3.7.16.1 release candidate into the sessions branch. (check-in: ee35a89712 user: drh tags: sessions)
2013-03-25
19:57
Merge all recent trunk changes into the experimental-mmap branch. (check-in: a607d63f0b user: drh tags: experimental-mmap)
2013-03-21
21:20
Many spelling fixes in comments. No changes to code. (check-in: 6f6e2d5094 user: mistachkin tags: trunk)
2009-11-04
18:51
Fix documentation typos. (check-in: 590d4ac1ee user: drh tags: shunning-error)
2009-03-05
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) (check-in: 6404afa0c5 user: shane tags: trunk)
2008-04-12
13:06
Remove all instances of sprintf() from the FTS modules. Ticket #3049. (CVS 4996) (check-in: 062bf5d44d user: drh tags: trunk)
2007-12-13
21:54
Change all instances of "it's" in comments to either "its" or "it is", as appropriate, in case the comments are ever again read by a pedantic grammarian. Ticket #2840. (CVS 4629) (check-in: 4e91a267fe user: drh tags: trunk)
2007-11-23
18:06
Do not require SQLITE_ENABLE_BROKEN_FTS2 if FTS2 is not enabled. The same for FTS1. Ticket #2777. (CVS 4556) (check-in: f94cdcfd11 user: drh tags: trunk)
2007-09-13
18:16
Drop the forced error from fts3.c and add forced errors to fts2.c and fts1.c. (CVS 4427) (check-in: fec6567a0f user: shess tags: trunk)
2007-08-30
19:56
Fix memory leak reported by an fts1 user. Was losing a doclist on a query error. (CVS 4347) (check-in: eee0250249 user: shess tags: trunk)
2007-08-14
13:20
Back-port critical soft heap limit fixes to version 3.3.17. The following check-ins were back-ported: (4031), (4037), (4097), (4202), (4203), (4207), (4208), (4214). (CVS 4222) (Leaf check-in: f0029da32f user: drh tags: branch_3_3_17)
2007-07-30
18:55
Fix ticket #2439: the FTS1 and FTS2 extensions use the non-standard, unportable and highly deprecated <malloc.h> header on all platforms except Apple Mac OS X. The <malloc.h> actually is never required on any OS with an at least partly POSIX-conforming API as the malloc(3) & friends functions officially live in <stdlib.h> since over 10 years. Under some platform like FreeBSD the inclusion of <malloc.h> since a few years even causes an "#error" and this way a build failure. So, just get rid of the bad <malloc.h> usage in FTS1 and FTS2 extensions at all and stick with <stdlib.h> there only. (CVS 4191) (check-in: 3f9a666143 user: rse tags: trunk)
2007-07-25
00:56
Implement xRename() for fts1 so that it is possible to rename fts1 tables. See http://www.sqlite.org/cvstrac/chngview?cn=4143 (CVS 4184) (check-in: febf75f022 user: shess tags: trunk)
00:38
Replicates http://www.sqlite.org/cvstrac/chngview?cn=4151 which modified fts2: Modify handling of SQLITE_SCHEMA in fts2 code. An SQLITE_SCHEMA error may cause SQLite to reload the internal schema, deleting and recreating v-table objects. So the sqlite3_vtab structure can be deleted out from under a v-table implementation. (CVS 4183) (check-in: f9020cffda user: shess tags: trunk)
00:28
Sorry, previous check-in included a last-minute "Did it really work?" change :-). (CVS 4182) (check-in: 5db25e369a user: shess tags: trunk)
00:25
Apply change 4095 to fts1. Fix snippet generation when the left-most column of an fts table is used in the MATCH clause. Fix for ticket #2429. (CVS 4181) (check-in: c2ba3cc0f7 user: shess tags: trunk)
2007-06-25
12:49
All the use of MySQL-style quoting in the FTS modules. Ticket #2446. (CVS 4119) (check-in: 3be2a6d1c3 user: drh tags: trunk)
2007-05-10
21:31
Backport the stack-size reduction patch in (3673) to version 3.3.13. (CVS 3979) (Leaf check-in: e91012b603 user: drh tags: branch_3_3_13)
2007-04-09
20:45
Fix crash in delete when existing row has null fields. Previous code assumed that the row had values in all columns, sigh. Fixes bug http://www.sqlite.org/cvstrac/tktview?tn=2289 . (CVS 3833) (check-in: 81be7290a4 user: shess tags: trunk)
2007-03-29
16:30
Don't call ctype functions on hi-bit chars. Some platforms raise assertions when this occurs, and it's almost certainly not the right thing to do in the first place. (CVS 3746) (check-in: f6c3abdc6c user: shess tags: trunk)
2007-03-16
18:30
Out-of-memory cleanup in tokenizers. Handle NULL return from malloc/calloc/realloc appropriately, and use sizeof(var) instead of sizeof(type) to make certain that we don't get a mismatch between them as the code rots. (CVS 3693) (check-in: fbc53da8c6 user: shess tags: trunk)
2007-02-07
01:01
http://www.sqlite.org/cvstrac/tktview?tn=2219 When creating fts tables in an attached database, the backing tables are created in database 'main'. This change propagates the appropriate database name to the routines which build sql statements. Note that I propagate the database name and table name separately. I briefly considered just making the table name be "db.table", but it didn't fit so well in the model used to store the table name and other information, and having the db name passed separately seemed a bit more transparent. (CVS 3631) (check-in: 283385d207 user: shess tags: trunk)
2007-01-19
22:59
http://www.sqlite.org/cvstrac/tktview?tn=2166,35 Calling UPDATE against an fts table in a UTF-16 database inserts corrupted data into the database. The UTF-8 data is being inserted directly. This appears to happen because sqlite3_ value_text() destructively coerces a value to UTF-8, and it's never converted back when updating the table. This works around the problem by rearranging things so that the update happens before the coercion. (CVS 3596) (check-in: 4f2ab4b632 user: shess tags: trunk)
2006-11-29
23:41
Drop a couple variables which are no longer used anywhere. (CVS 3524) (check-in: 08c2cc0e07 user: shess tags: trunk)
05:17
http://www.sqlite.org/cvstrac/tktview?tn=2046 The virtual table interface allows for a cursor to field multiple xFilter() calls. For instance, if a join is done with a virtual table, there could be a call for each row which potentially matches. Unfortunately, fulltextFilter() assumes that it has a fresh cursor, and overwrites a prepared statement and a malloc'ed pointer, resulting in unfinalized statements and a memory leak. This change hacks the code to manually clean up offending items in fulltextFilter(), emphasis on "hacks", since it's a fragile fix insofar as future additions to fulltext_cursor could continue to have the problem. (CVS 3521) (check-in: 18142fdb6d user: shess tags: trunk)
2006-11-13
20:15
Allow backing tables to be missing on dropping fts table. Fixes http://www.sqlite.org/cvstrac/tktview?tn=1992,35 . (CVS 3509) (check-in: 9628a61a6f user: shess tags: trunk)
2006-10-25
23:22
Remove unreferenced local variable. (CVS 3487) (check-in: 2d3b22197c user: shess tags: trunk)
2006-10-13
11:55
Removing debugging printf from the porter stemmer code. Ticket #2016. (CVS 3475) (check-in: 7a08c6272f user: drh tags: trunk)
2006-10-10
23:22
Fix leaky symbols. With this change, fts1 and fts2 can both be statically linked. (CVS 3472) (check-in: 5e8bbb85c1 user: shess tags: trunk)
2006-10-05
21:48
Fix incorrect doclist initialization in term_select_all(). docListRestrictColumn() generates a DL_POSITIONS doclist, which means that after the first doclist is processed, the second doclist is initialized as DL_POSITIONS, but with DL_POSITIONS_OFFSETS data. (Note that DL_DEFAULT is now DL_POSITIONS, which masks this bug.) (CVS 3467) (check-in: 144e3f11e2 user: shess tags: trunk)
2006-10-04
17:35
The snippet generator adds ellipsis between text from different columns. (CVS 3465) (check-in: 6cf1fb9f80 user: drh tags: trunk)
2006-10-03
19:37
Make DL_POSITION the default mode in FTS1. Remove the need to compile with SQLITE_CORE when SQLITE_ENABLE_FTS1 is used. (CVS 3462) (check-in: df1a4b4834 user: drh tags: trunk)
11:42
Add the option to omit offset information from posting lists in FTS1. (CVS 3456) (check-in: fdcea7b1ff user: drh tags: trunk)
2006-10-01
18:41
Add a Porter stemmer option to the FTS1 module. (CVS 3452) (check-in: 936b06aaa8 user: drh tags: trunk)
2006-09-28
19:43
Fix a bug in the handling of the OR operator in FTS1. Test cases added to prevent a repeat. (CVS 3450) (check-in: 8cdf1d6ae0 user: drh tags: trunk)
18:58
More snippet generator improvements and test cases. (CVS 3449) (check-in: 0934d220b3 user: drh tags: trunk)
18:37
Bug fix in the FTS1 snippet generator. Improvements in the way the snippet generator handles whitespace. (CVS 3448) (check-in: d3f4ae8275 user: drh tags: trunk)
11:41
Avoid segfaults when inserted NULL values into FTS1. (CVS 3447) (check-in: 165645d301 user: drh tags: trunk)
2006-09-22
00:06
Implemented UPDATE for full-text tables. We handle an UPDATE to a row by performing an UPDATE on the content table and by building new position lists for each term which appears in either the old or new versions of the row. We write these position lists all at once; this is presumably more efficient than a delete followed by an insert (which would first write empty position lists, then new position lists). (CVS 3434) (check-in: 757fa22400 user: adamd tags: trunk)
2006-09-21
20:56
When gathering a doclist for querying, don't discard empty position lists until the end; this allows empty position lists to override non-empty lists encountered later in the gathering process. This fixes #1982, which was caused by the fact that for all-column queries we weren't discarding empty position lists at all. (CVS 3433) (check-in: 111ca61671 user: adamd tags: trunk)
02:03
Implementation of the snippet() function for FTS1. Includes a few simple test cases but more testing is needed. (CVS 3431) (check-in: c7ee60d009 user: drh tags: trunk)
2006-09-18
21:14
Fixed a build problem in sqlite3_extension_init(). (CVS 3430) (check-in: bb2e1871cb user: adamd tags: trunk)
20:24
Convert all names to lower case before sending them to the xFindFunction method of a virtual table. In FTS1, use strcmp instead of strcasecmp. Ticket #1981. (CVS 3428) (check-in: efa8fb32a5 user: drh tags: trunk)
02:12
Modify FTS1 so that the "magic" column has the same name as the virtual table. Offsets are retrieved using a special "offsets" function whose first argument is the magic column. Snippets will ultimately be retrieved in the same way. (CVS 3427) (check-in: 5e35dc1ffa user: drh tags: trunk)
2006-09-16
21:45
Add the sqlite3_overload_function() API - part of the virtual table interface. (CVS 3426) (check-in: aa7728f9f5 user: drh tags: trunk)
2006-09-15
16:09
Fix an initialization problem in FTS1. Ticket #1977. (CVS 3424) (check-in: 5a18dd8849 user: drh tags: trunk)
2006-09-14
01:17
The FTS1 tables have a new automatic column named "offset" that returns a string containing byte offset information for all matching terms. Also added a large test case based on SQLite mailing list entries. (CVS 3417) (check-in: f25cfa1aec user: drh tags: trunk)
2006-09-13
19:18
In FTS1: Retain the Query structure as part of the cursor. It will be used laster as part of snippet generation. (CVS 3414) (check-in: 607d928ce9 user: drh tags: trunk)
18:40
Earlier refactoring changed name in fts1.c but not fts1.h. (CVS 3413) (check-in: d4edb8035c user: shess tags: trunk)
17:17
Minor code cleanup in FTS1. (CVS 3412) (check-in: fca5928167 user: drh tags: trunk)
16:02
Implementation of "column:" modifiers in FTS1 queries. (CVS 3411) (check-in: 820634f71e user: drh tags: trunk)
15:20
Module spec parser enhancements for FTS1. Now able to cope with column names in the spec that are SQL keywords or have special characters, etc. Also added support for additional control lines. Column names can be followed by a type specifier (which is ignored.) (CVS 3410) (check-in: adb780e0dc user: drh tags: trunk)
12:36
Fix the FTS1 test cases and add new tests. Comments added to the FTS1 code. (CVS 3409) (check-in: 528036c828 user: drh tags: trunk)
02:18
Allow virtual tables to contain multiple full-text-indexed columns. Added a magic column "_all" which can be used for querying all columns in a table at once. For now, each posting list stores position/offset information for multiple columns. We may implement separate posting lists for separate columns at some future point. (CVS 3408) (check-in: 366a70b086 user: adamd tags: trunk)
2006-09-12
23:36
Answer queries for a particular rowid in a full-text table by looking up that rowid directly rather than by performing a table scan. (CVS 3407) (check-in: 877d5558b1 user: adamd tags: trunk)
2006-09-11
21:39
Re-use deleted rowids for new segments. This has a somewhat surprising impact on performance, I believe because it keeps the index smaller (by keeping rowids smaller), and also because it improves locality in the table (deleting a row means we've already touched the pages leading to that rowid). (CVS 3405) (check-in: 2f5f6290c9 user: shess tags: trunk)
00:34
Add a rudimentary tokenizer and parser to FTS1 for parsing the module arguments during initialization. Recognized arguments include a tokenizer selector and a list of virtual table columns. (CVS 3403) (check-in: 227dc3feb5 user: drh tags: trunk)
2006-09-10
17:31
Add pzErr parameters to the xConnect and xCreate methods of virtual tables in order to provide better error reporting. This is an interface change for virtual tables. Prior virtual table implementations will need to be modified and recompiled. (CVS 3402) (check-in: f44b8bae97 user: drh tags: trunk)
03:34
Add some simple test cases for the OR and NOT logic of the fts1 module. Fix lots of bugs discovered while developing these test cases. (CVS 3400) (check-in: 70bcff024b user: drh tags: trunk)
2006-09-09
23:11
Add support for OR and NOT terms in fts1. (CVS 3399) (check-in: ae50265791 user: drh tags: trunk)
2006-09-08
17:00
Write doclists using a segmented technique to amortize costs better. New items for a term are merged with the term's segment 0 doclist, until that doclist exceeds CHUNK_MAX. Then the segments are merged in exponential fashion, so that segment 1 contains approximately 2*CHUNK_MAX data, segment 2 4*CHUNK_MAX, and so on. (CVS 3398) (check-in: b6b93a3325 user: shess tags: trunk)
2006-09-05
18:21
A minor change to fts1.c to fix broken build. (CVS 3393) (check-in: 55a03b9625 user: adamd tags: trunk)
2006-09-02
20:58
Add a TRACE macro to the FTS1 module for troubleshooting. Turned off by default. (CVS 3388) (check-in: d4923e98c6 user: drh tags: trunk)
14:17
Convert static variables into constants in the FTS module. (CVS 3385) (check-in: 098cbafcd6 user: drh tags: trunk)
00:23
Miscellaneous restructuring and cleanup based on suggestions from shess. (CVS 3382) (check-in: e98b0cf292 user: adamd tags: trunk)
2006-09-01
00:33
Make fts1.c not rely on nul-terminated strings. Mostly a matter of making sure we always pass around ptr/len, but there were a few places where we actually relied on nul-termination. An earlier change had additionally changed appropriate sqlite3_bind_text() calls to sqlite3_bind_blob(). I've found that this changes what's actually stored in the database, so backed those changes out. Also (and this is weird), I found that I could no longer do straight-forward = queries against %_term.term at a command-line. (CVS 3379) (check-in: 5844db1aa9 user: shess tags: trunk)
00:05
Make tokenizer not rely on nul-terminated text. Instead of using strcspn() and a nul-terminated delimiter list, I just flagged delimiters in an array and wrote things inline. Submitting this for review separately because it's pretty standalone. (CVS 3378) (check-in: 2631ceaeef user: shess tags: trunk)
2006-08-31
15:07
Refactor the FTS1 module so that its name is "fts1" instead of "fulltext", so that all symbols with external linkage begin with "sqlite3Fts1", and so that all filenames begin with "fts1". (CVS 3377) (check-in: e1891f0dc5 user: drh tags: trunk)
2006-08-30
21:40
Just don't run tolower() on hi-bit characters. This shouldn't cause us to break any UTF-8 code points, unless they were already broken in the input. (CVS 3376) (check-in: 6c77c2d5e1 user: shess tags: trunk)
2006-08-28
23:46
Make static some symbols which shouldn't have been exported. (CVS 3371) (check-in: 58006e38af user: shess tags: trunk)
20:08
Make hi-bit characters delimiters. This is a stopgap until the tokenizer and fulltext.c recognize UTF-8 correctly. (CVS 3370) (check-in: ca850d3d80 user: shess tags: trunk)
2006-08-25
19:20
Fix gcc gripe about parens in a ||/&& in mergePosList(). Drop unused pBlob/nBlob in index_insert_term(). Fix NULL deref in an assertion in docListUpdate() delete case. Minor code tightening in docListUpdate(). (CVS 3367) (check-in: a6fcf9101a user: shess tags: trunk)
2006-08-23
23:58
A first implementation of a full-text search module for SQLite. (CVS 3363) (check-in: b0d8e0d314 user: adamd tags: trunk)
2006-08-22
14:45
Add the ext/fts1 subdirectory for holding the first full-text search extension. (CVS 3360) (check-in: 7f152f9f3a user: drh tags: trunk)