SQLite

Timeline
Login

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

100 descendants and 100 ancestors of 18142fdb6d1f5bfdbb1155274502b9a602885fcb

2007-02-01
01:53
Fix a bug in the copy method of the TCL interface. Ticket #2201. (CVS 3623) (check-in: 93626396 user: drh tags: trunk)
01:40
Allow up to 64 tables in a join (the number of bits in a long long int). The old limit was 32 tables. (CVS 3622) (check-in: 505dce8f user: drh tags: trunk)
2007-01-31
23:37
Fixed incorrect typecast for flock structure ptr in fcntl() call in sqlite3TestLockingStyle() Restored previous fullfsync behavior, try fsync() if fcntl(fd, F_FULLFSYNC, 0) returns an error. (CVS 3621) (check-in: f044c5f4 user: aswift tags: trunk)
2007-01-29
17:58
Replace the randomHex() function with separate functions randomBlob() and hex(). (CVS 3620) (check-in: f5ad74a9 user: drh tags: trunk)
15:50
Add the randomhex() function as a built-in. (CVS 3619) (check-in: a6001589 user: drh tags: trunk)
2007-01-28
21:42
Implement the platform specific part of the shared library interface on OS/2 (CVS 3618) (check-in: 027251a6 user: pweilbacher tags: trunk)
21:12
Adapt returns of the os2Read() function to those of other platforms using checkin (3549) to prevent possible corruption (CVS 3617) (check-in: ba76107c user: pweilbacher tags: trunk)
2007-01-27
14:30
Version 3.3.12 (CVS 3616) (check-in: fc660703 user: drh tags: trunk)
14:26
Adjustments to the pragma test for OS-X. (CVS 3615) (check-in: 4d0d2063 user: drh tags: trunk)
14:11
More adjustments to the pragma test for windows. (CVS 3614) (check-in: 79a65436 user: drh tags: trunk)
14:04
Adjustment to tests for PRAGMA integrity_check so that they run under windows. (CVS 3613) (check-in: a79914cc user: drh tags: trunk)
13:38
Increment the version number in preparation for the 3.3.12 release. (CVS 3612) (check-in: 24e465af user: drh tags: trunk)
13:37
Fix a documentation comment in vdbe.c. Ticket #2188. (CVS 3611) (check-in: 3eec703b user: drh tags: trunk)
02:38
Parser changes to allow parenthesized numerical arguments to pragmas, in support of the integrity_check enhancement of check-in (3609) and ticket #2176. (CVS 3610) (check-in: ab6322bf user: drh tags: trunk)
02:24
Limit the number of errors returned by PRAGMA integrity_check to 100 by default. Specify an alternative limit using an argument to the pragma. Ticket #2176. (CVS 3609) (check-in: d564a039 user: drh tags: trunk)
2007-01-26
21:08
Make sure the vdbeInt.h file is not #included multiple times. Ticket #2194. (CVS 3608) (check-in: 93edd3b0 user: drh tags: trunk)
19:31
Fix prototypes for the parser. Syntactic change only - no effect on object code. Ticket #2193. (CVS 3607) (check-in: 02990fab user: drh tags: trunk)
19:23
Add code to select.c for printing the contents of parse-tree structures. The code is normally omitted. You must compile with -DSQLITE_TEST or -DSQLITE_DEBUG to enable it. (CVS 3606) (check-in: 1b26d687 user: drh tags: trunk)
19:04
Fix a (harmless) assertion fault on nested views where the inner views are compound selects. Ticket #2192. (CVS 3605) (check-in: 942e7193 user: drh tags: trunk)
13:08
Make sure the loadext.c module works even if all SQLITE_OMIT macros are defined. Tickets #2184 and #2069. (CVS 3604) (check-in: e1fae43c user: drh tags: trunk)
00:51
Work around issues with certain C++ compilers by adding a typedef to sqlite3.h. Ticket #2191. (CVS 3603) (check-in: 31e8cf7f user: drh tags: trunk)
2007-01-25
16:56
Fix an additional problem with the IS NULL optimization on LEFT JOINs. Ticket #2189. See also ticket #2177. (CVS 3602) (check-in: 358dd82d user: drh tags: trunk)
2007-01-24
03:46
Do not run the fts2i.test unless the FTS2 module is available. (CVS 3601) (check-in: 310f6858 user: drh tags: trunk)
03:43
Do not run test fts1i.test if FTS1 is not installed. (CVS 3600) (check-in: 810c0176 user: drh tags: trunk)
2007-01-22
13:07
Version 3.3.11 (CVS 3599) (check-in: 66cbbe04 user: drh tags: trunk)
13:06
Prepare for the release of version 3.3.11 (CVS 3598) (check-in: daf28830 user: drh tags: trunk)
13:02
Fix a pragma test so that it works in directories that have spaces in their names. (CVS 3597) (check-in: 071c957a user: drh 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: 4f2ab4b6 user: shess tags: trunk)

01:06
Make sure the IS NULL optimization introduced by check-in (3494) correctly handles a LEFT JOIN where the a term from the right table of the join uses an IS NULL constraint. Ticket #2177. This check-in also adds the new test cases that were suppose to have been added with (3494) but which were mistakenly omitted. (CVS 3595) (check-in: 335863e4 user: drh tags: trunk)
2007-01-16
18:19
Additional memory initialization in lemon - bug reported from wireshark. Ticket #2172. Note this problem only comes up with certain grammars, and does not impact SQLite. On the other hand, it might cause SQLite to run slower. So we might want to revisit this change at some point. (CVS 3594) (check-in: d537aa5e user: drh tags: trunk)
03:09
Make sure the parser generated by lemon always calls destructors on unused symbols, even if there is no action following the rule. Ticket #2171. (CVS 3593) (check-in: 0c5c1b93 user: drh tags: trunk)
2007-01-12
23:43
Fix a bug in sqlite3_prepare_v2() introduced by checkin (3578) and reported on the mailing list. (CVS 3592) (check-in: 87248470 user: drh tags: trunk)
23:09
Fix a bug in lemon. The code in which the error appears might well be unreachable. The changes does not effect the code that is generated for the SQLite parser. Ticket #2164. (CVS 3591) (check-in: f4ee5d83 user: drh tags: trunk)
2007-01-10
18:56
Make the AreFileApisANSI() call a macro with a value of 1 on wince. Ticket #2163. (CVS 3590) (check-in: a72c950c user: drh tags: trunk)
13:34
More homepage typo fixes. (CVS 3589) (check-in: 85b5d446 user: drh tags: trunk)
13:32
Fix a typo on the homepage. (CVS 3588) (check-in: a0b42991 user: drh tags: trunk)
12:58
Version 3.3.10 (CVS 3587) (check-in: 204a212a user: drh tags: trunk)
12:57
Corrections to the documentation on sqlite3_exec(). Ticket #2161. (CVS 3586) (check-in: afd33f62 user: drh tags: trunk)
12:54
Corrections to the documentation for sqlite3_busy_handler(). Ticket #2160. (CVS 3585) (check-in: 9614c0f9 user: drh tags: trunk)
2007-01-09
23:13
Documentation updates prior to version 3.3.10. Among the changes is a fix for ticket #2148 (CVS 3584) (check-in: 686beffa user: drh tags: trunk)
17:18
Fix the windows OS layer so that it returns detailed IOERR error codes. (CVS 3583) (check-in: 4b36de46 user: drh tags: trunk)
15:32
Work around win2k problems so that single-character filenames can be used. Ticket #2151. (CVS 3582) (check-in: c4eb2100 user: drh tags: trunk)
15:06
Documentation and tests to show that the cause of a parsing error is available on sqlite3_errmsg after sqlite3_step return SQLITE_SCHEMA. (CVS 3581) (check-in: 31a661d4 user: drh tags: trunk)
15:02
Updates tests and documentation to justify the behavior observed in ticket #2158. No changes to code. (CVS 3580) (check-in: e1f7cf06 user: drh tags: trunk)
14:37
Do not use the symbol "interrupt" since that is a reserved word in OpenWatcom. Ticket #2159. (CVS 3579) (check-in: 9960ba57 user: drh tags: trunk)
14:01
When an automatic re-prepare occurs, take care not to reset the internal schema symbol table. Ticket #2156. This change also includes some debugging enhancements. (CVS 3578) (check-in: 43fe7fc1 user: drh tags: trunk)
2007-01-08
22:40
Additional tests of sqlite3_prepare_v2. (CVS 3577) (check-in: b0650aa6 user: drh tags: trunk)
21:07
Fix a critical bug in sqlite3_prepare_v2 that can lead to segfaults when the schema changes and the statement is recompiled automatically. Ticket #2154. (CVS 3576) (check-in: 3401388d user: drh tags: trunk)
16:19
Fix another round-off problem in strftime(). Ticket #2153. (CVS 3574) (check-in: d49ddc5f user: drh tags: trunk)
14:31
Updates to the sqlite3 command-line shell documentation. Ticket #2144. (CVS 3573) (check-in: 3a422bb9 user: drh tags: trunk)
13:40
Add the $(BEXE) suffix to every mention of "lemon" in the Makefile.in, so that the build will work on OS/2. Ticket #2149. (CVS 3571) (check-in: f5989a0b user: drh tags: trunk)
13:07
Fix a round-off error in the %W and %j conversions of the strftime() function. Ticket #2150. (CVS 3570) (check-in: 52067937 user: drh tags: trunk)
2007-01-06
13:11
Another typo fixed in changes.html (CVS 3569) (check-in: 70033a0e user: drh tags: trunk)
13:10
Fix the makefile to correctly install sqlite3ext.h. Ticket #2145 (CVS 3568) (check-in: be410fee user: drh tags: trunk)
13:05
Fix typo in changes.html. (CVS 3567) (check-in: cc1df49b user: drh tags: trunk)
2007-01-05
16:39
Clear a compiler warning when compiling with -DSQLITE_OMIT_VIRTUALTABLE. (CVS 3566) (check-in: 520f6583 user: drh tags: trunk)
14:41
Remove redundant variable. (CVS 3565) (check-in: 2a7f5aaf user: drh tags: trunk)
14:38
Suppress compiler warnings. Fix a bug in IO error detection on windows. (CVS 3564) (check-in: daed2bab user: drh tags: trunk)
02:00
In the btree.c, when releasing the page1 lock, first make sure the pager has not reset and released the lock already. This fixes a bug introduced by (3549). (CVS 3563) (check-in: 36a2db96 user: drh tags: trunk)
01:58
Get threadtest2.c working again after being long neglected. (CVS 3562) (check-in: 06216d0d user: drh tags: trunk)
00:14
Fix a test case that changed due to (3560). Ticket #2143 (CVS 3561) (check-in: c28664d3 user: drh tags: trunk)
2007-01-04
22:13
Fix the user_version and schema_version pragmas so that they set a result column name. Ticket #2143. (CVS 3560) (check-in: f81c4227 user: drh tags: trunk)
22:13
Fix the trigger4 test so that it runs on windows. (CVS 3559) (check-in: 5e4e65ea user: drh tags: trunk)
18:01
Put a missing double-quote into the changes.html page. (CVS 3558) (check-in: 277f8faa user: drh tags: trunk)
17:01
Version 3.3.9 (CVS 3557) (check-in: 8bf19a6a user: drh tags: trunk)
16:37
Increase the version number to 3.3.9. Documentation changes prior to the release of version 3.3.9. (CVS 3556) (check-in: 7e283297 user: drh tags: trunk)
16:37
Disable the alter2.test on utf16 since the results of that test only work for utf8. (CVS 3555) (check-in: 87f350f3 user: drh tags: trunk)
14:58
Fix a memory leak introduced by the latest changes to pager.c. (CVS 3554) (check-in: 8cad5d67 user: drh tags: trunk)
14:36
Reactivate disabled "alter2" tests. (CVS 3553) (check-in: 093467a0 user: drh tags: trunk)
01:20
Fix for ticket #2141. (CVS 3552) (check-in: 70f5f3b8 user: drh tags: trunk)
01:20
Add a comment to vdbe.c to explain the use of an uninitialized variable. (CVS 3551) (check-in: 1773eb7b user: drh tags: trunk)
2007-01-03
23:37
Clean up memory leaks and uninitialized variables detected by valgrind. Identify all tests where we deliberately derefence freed memory by adding a "-misuse" tag. (CVS 3550) (check-in: 70a86270 user: drh tags: trunk)
23:36
Additional changes in the pager and os interface layers to fix problems that might be contributing to recently observed database corruption. (CVS 3549) (check-in: a593d574 user: drh tags: trunk)
15:34
Make sure that the database size cache in the pager is invalidated whenever the database is unlocked. A stale value in the database size cache can result in database corruption on a heavily loaded system running autovacuum. (CVS 3548) (check-in: 6806b9ec user: drh tags: trunk)
2007-01-02
18:41
Update the vtab_err test to check for -DSQLITE_MEMDEBUG=1 and skip the tests if missing. Pager is more careful to clear its file size cache. Remove an assert() in VDBE that might fail on a corrupt database file. (CVS 3547) (check-in: bf1afd01 user: drh tags: trunk)
2006-12-22
20:33
OS/2 change: add safeguard to be able to use SQLite loaded into high memory on OS/2 when compiled with GCC 3.3 or later. Currently, this is only used when building within the Mozilla source tree. (CVS 3546) (check-in: 720189b8 user: pweilbacher tags: trunk)
2006-12-21
22:38
Disable extension loading by default. At some point we should change the configure script to detect the presence of dlopen() automatically and add the appropriate library to the link. But that requires a working version of autoconf, which I do not have. Ticket #2124. (CVS 3545) (check-in: 87a9ee07 user: drh tags: trunk)
03:20
More fixes to the microsoft code-page nightmare... (CVS 3544) (check-in: 0b47d880 user: drh tags: trunk)
02:21
Use GetProcAddressA() on wince. Ticket #2123 (CVS 3543) (check-in: e3dddd1c user: drh tags: trunk)
01:37
Reduce the number of utf8->unicode conversions required in wince. Ticket #2122 (CVS 3542) (check-in: 6d2ff096 user: drh tags: trunk)
01:29
Move the shared-library loading routines into the OS portability layer, thus enabling the os_win.c code to handle the character encoding confusion of win95/nt/ce. Ticket #2023. (CVS 3541) (check-in: a1bcc6de user: drh tags: trunk)
00:46
Change a parameter type from "int" to "DWORD" in the windows interface. Ticket #2122. (CVS 3540) (check-in: cca1eb3d user: drh tags: trunk)
2006-12-20
14:53
The xFilter method is not optional. (CVS 3539) (check-in: 6fdbd3bc user: drh tags: trunk)
14:31
Initialize a variable to avoid compiler warnings and human confusion. Ticket #2117. (CVS 3538) (check-in: 951af8d5 user: drh tags: trunk)
03:37
Patch to get extension loading working on wince. Ticket #2023. (CVS 3537) (check-in: a81f3ddf user: drh tags: trunk)
03:24
The query optimizer does a better job of optimizing out ORDER BY clauses that contain the rowid or which use indices that contain the rowid. Ticket #2116. (CVS 3536) (check-in: f245f5c2 user: drh tags: trunk)
02:15
Allow constraint names on DEFAULT values in a table definition. Ticket #2109. (CVS 3535) (check-in: 893d58c2 user: drh tags: trunk)
2006-12-19
18:57
Build without warnings and pass all tests with SQLITE_OMIT_LOAD_EXTENSION. Ticket #2113. (CVS 3534) (check-in: c3d118b4 user: drh tags: trunk)
18:47
Fix a typo in shell.c. Ticket #2111. (CVS 3533) (check-in: 6f8a5623 user: drh tags: trunk)
18:46
Use sqlite3_mprintf() instead of strdup() to reduce libc dependencies. Ticket #2114. (CVS 3532) (check-in: bf4a78cb user: drh tags: trunk)
2006-12-18
18:34
Speed improvement: do not journal or rollback pages that are pulled out of the freelist. (CVS 3531) (check-in: 4dffc4c3 user: drh tags: trunk)
14:12
Updates to the "Distinctive Features" document. (CVS 3530) (check-in: c734585e user: drh tags: trunk)
2006-12-16
16:25
Query optimizer enhancement: In "FROM a,b,c left join d" allow the C table to be reordered with A and B. This used to be the case but the capability was removed by (3203) and (3052) in response to ticket #1652. This change restores the capability. (CVS 3529) (check-in: 7393c81b user: drh tags: trunk)
2006-12-14
01:06
Fix a bug in lemon that leads to an assertion fault given an invalid grammar. The bug and this fix do not effect on SQLite. Ticket #2107. (CVS 3528) (check-in: f2ad230f user: drh tags: trunk)
2006-11-30
13:06
Change the table_info pragma so that it returns NULL for the default value if there is no default value. Ticket #2078. (CVS 3527) (check-in: 5f21c3a5 user: drh tags: trunk)
13:06
Improvements to the new performance tests. (CVS 3526) (check-in: 27f56c20 user: drh tags: trunk)
13:05
Fix indentation typo in btree.c. (CVS 3525) (check-in: 5d61486f user: drh tags: trunk)
2006-11-29
23:41
Drop a couple variables which are no longer used anywhere. (CVS 3524) (check-in: 08c2cc0e user: shess tags: trunk)
21:03
Test that terms longer than interior nodes work correctly. A bug prior to fts2.c r1.10 meant that such large terms caused an eventual stack overflow. (CVS 3523) (check-in: 66581162 user: shess tags: trunk)
20:53
Added the speed1.test script (CVS 3522) (check-in: 30355dfb user: drh 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: 18142fdb user: shess tags: trunk)

01:02
Delta-encode terms in interior nodes. While experiments have shown that this is of marginal utility when encoding terms resulting from regular English text, it turns out to be very useful when encoding inputs with very large terms. (CVS 3520) (check-in: c8151a99 user: shess tags: trunk)
2006-11-23
21:09
Improvements to the speed tests recently added to the test suite. (CVS 3519) (check-in: 272c1a6e user: drh tags: trunk)
11:59
Fix a typo in the OMIT_AUTORIZATION in expr.c. (CVS 3518) (check-in: 3dea7fbe user: drh tags: trunk)
11:58
Make the pager sector size configurable at compile-time. (CVS 3517) (check-in: 6221cf4f user: drh tags: trunk)
09:39
Add performance tests to the test suite. (CVS 3516) (check-in: 270c745d user: drh tags: trunk)
2006-11-20
16:21
Fix the ".dump" command in the shell. Ticket #2072. Also ticket #2065. (CVS 3515) (check-in: 9fdc2496 user: drh tags: trunk)
2006-11-18
20:20
Make sure VACUUM cleans up after itself. Ticket #2071. (CVS 3514) (check-in: 2fdc147d user: drh tags: trunk)
00:12
Store minimal terms in interior nodes. Whenever there's a break between leaf nodes, instead of storing the entire leftmost term of the rightmost child, store only that portion of the leftmost term necessary to distinguish it from the rightmost term of the leftmost child. (CVS 3513) (check-in: f6e0b080 user: shess tags: trunk)
2006-11-17
21:12
Refactoring groundwork for coming work on interior nodes. Change LeafWriter to use empty data buffer (instead of empty term) to detect an empty block. Code to validate interior nodes. Moderate revisions to leaf-node and doclist validation. Recast leafWriterStep() in terms of LeafWriterStepMerge(). (CVS 3512) (check-in: f30771d5 user: shess tags: trunk)
2006-11-13
21:09
Delta-encode docids. This is good for around 22% reduction in index size with DL_POSITIONS. It improves performance about 5%-6%. (CVS 3511) (check-in: 9b6d413d user: shess tags: trunk)
21:00
Require a minimum fanout for interior nodes. This prevents cases where excessively large terms keep the tree from finding a single root. A downside is that this could result in large interior nodes in the presence of large terms, which may be prone to fragmentation, though if the nodes were smaller that would translate into more levels in the tree, which would also have that problem. (CVS 3510) (check-in: 64b7e340 user: shess tags: trunk)
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: 9628a61a user: shess tags: trunk)
2006-11-11
01:31
The uninitialized file descriptor from the unixFile structure is passed to sqlite3DetectLockingStyle in allocateUnixFile rather than the file descriptor passed in. This was causing the locking detection on NFS file systems to behave somewhat randomly and the result was locks were not respected and data loss could occur. (CVS 3508) (check-in: b9dd16ef user: aswift tags: trunk)
2006-11-09
15:18
Update the documentation to talk about the new sqlite3_prepare_v2() API. (CVS 3507) (check-in: d9e14b61 user: drh tags: trunk)
00:24
First cut at adding the sqlite3_prepare_v2() API. Test cases added, but more testing would be useful. Still need to update the documentation. (CVS 3506) (check-in: f1efae92 user: drh tags: trunk)
2006-11-08
12:25
Make the .exit and .quit commands work again in the shell. Ticket #2056. (CVS 3505) (check-in: f39978ef user: drh tags: trunk)
2006-11-07
15:02
Fix a typo in os_win.c. Ticket #2055. (CVS 3504) (check-in: d309680e user: drh tags: trunk)
2006-11-06
21:20
Use the difference between the SQLITE_IOERR_SHORT_READ and SQLITE_IOERR_READ returns from sqlite3OsRead() to make decisions about what to do with the error. (CVS 3503) (check-in: 6324ea81 user: drh tags: trunk)
15:10
Fix a bug in the optimizer that was causing it to miss an OR optimization opportunity. (CVS 3502) (check-in: 9bf153b5 user: drh tags: trunk)
2006-11-01
12:20
Modify Makefile.in to install sqlite3ext.h. (CVS 3501) (check-in: 35c8c478 user: drh tags: trunk)
12:08
Remove dead code from btree.c. Ticket #2050. (CVS 3500) (check-in: dbd0125c user: drh tags: trunk)
2006-10-31
21:27
Change the default temp file prefix to be "sqlite" spelled backwards. Tickets #2049 et al. (CVS 3499) (check-in: a19ce5c1 user: drh tags: trunk)
21:16
Change the default prefix for temporary files so that it no longer contains the text "sqlite". In this way, perhaps we will not get so many false bug reports such as ticket #2049, #1989, and #1841. (CVS 3498) (check-in: 7ce48000 user: drh tags: trunk)
18:13
Fix a pair of memory leaks. These were turned up by running valgrind memcheck with various 10k doc insert, update, delete, and query tests. (CVS 3497) (check-in: 3cd9b64b user: shess tags: trunk)
18:08
Make the command-line shell ".dump" command more resilient in the face of database corruption. (CVS 3496) (check-in: ebd44f0b user: drh tags: trunk)
2006-10-30
13:37
Changes to support non-ASCII characters in win95 filenames. Ticket #2047. (CVS 3495) (check-in: 9fa3ae58 user: drh tags: trunk)
2006-10-28
00:28
Enhance the optimizer so that IS NULL can use an available index. (CVS 3494) (check-in: 64762a9d user: drh tags: trunk)
2006-10-27
14:21
Fix the ".dump" command in the command-line shell so that it shows TRIGGERs and VIEWs. Ticket #2044. (CVS 3493) (check-in: 58171a41 user: drh tags: trunk)
14:06
Changes directed toward optimizing IS NULL terms in WHERE clauses. (CVS 3492) (check-in: 4d336e9e user: drh tags: trunk)
2006-10-26
18:15
Bring CVS output into more commonly accepted practice. Tickets #2030, #1573. Add command-line options -bail and ".bail" commands. Default behavior is to continue after encountering an error. Ticket #2045. (CVS 3491) (check-in: 517712d6 user: drh tags: trunk)
14:25
Command-line shell enhancements. Bail out when errors are seen in non-interactive mode. Override isatty() using -interactive or -batch command-line options. Report line number in error messages. Tickets #2009, #2045. (CVS 3490) (check-in: 3baa04cf user: drh tags: trunk)
00:41
Empty queries should get no results. My recent change ( http://www.sqlite.org/cvstrac/chngview?cn=3486 ) broke test fts2a-5.3. This change should make the expected result more obvious. (CVS 3489) (check-in: cde383eb user: shess tags: trunk)
00:04
Make memset() uses less error-prone. http://www.sqlite.org/cvstrac/tktview?tn=2036,35 describes some cases where we were passing memset() a length which was the sizeof a pointer, rather than the structure pointed to. Instead, wrap this idiom up in CLEAR() and SCRAMBLE() macros. (CVS 3488) (check-in: 5878add0 user: shess tags: trunk)
2006-10-25
23:22
Remove unreferenced local variable. (CVS 3487) (check-in: 2d3b2219 user: shess tags: trunk)
21:00
Replace the DocList and DocListReader structures. The new structures distinguish reading from a static buffer from writing to a dynamic buffer. This allows n-way doclist merging, and in-place merging of segment leaf nodes, which together cut segment merge times in half. (CVS 3486) (check-in: af5bfb98 user: shess tags: trunk)
20:27
Test to force edge cases in query logic. Basically, exercise code to handle lack of hits correctly. (CVS 3485) (check-in: 2cb59033 user: shess tags: trunk)
05:21
Don't store empty segments. When inserting empty strings, the code was writing out a segment made up of a single leaf node containing the \0 header. LeafReader assumed that leaf nodes always contained at least one term, so assertions would fail.

While it would be possible to support reading and merging empty segments, there's no reason to do so. While this change could have been done in writeZeroSegment(), I put it in leafWriterFlush() so that it would work right if segmentMerge() created an empty segment, which could happen with future changes to how deleted documents are handled. (CVS 3484) (check-in: fed79bee user: shess tags: trunk)

2006-10-19
23:36
dup fts1 tests and edit for fts2. fts1porter.test omitted because it depends on being able to poke through to %_term table. (CVS 3482) (check-in: 2806c341 user: shess tags: trunk)
23:28
Add tests for delete and update in fts1. (CVS 3481) (check-in: b01c4371 user: shess tags: trunk)
20:27
fts2 support for testing. These are a prelude to adding some test scripts. (CVS 3480) (check-in: 004ad194 user: shess tags: trunk)
01:58
When converting UTF8 or UTF16 strings, change overlong strings and other illegal codes to 0xFFFD. Ticket #2029. (CVS 3479) (check-in: 0c6736df user: drh tags: trunk)
2006-10-18
23:26
Fix a problems that arise if malloc() fails while compiling SELECT statements within a TRIGGER. (CVS 3478) (check-in: ee4894b4 user: drh tags: trunk)
2006-10-13
15:34
Make sure the names of all expressions in compound SELECT statements used as subqueries are correctly resolved. Ticket #2018. (CVS 3477) (check-in: b886eaa3 user: drh tags: trunk)
12:25
Avoid expanding %d contained in the action of a lemon parser rule. Ticket #1063. This is a fix for lemon only. It does not effect SQLite. (CVS 3476) (check-in: 81daedcf user: drh tags: trunk)
11:55
Removing debugging printf from the porter stemmer code. Ticket #2016. (CVS 3475) (check-in: 7a08c627 user: drh tags: trunk)
2006-10-12
23:15
Convert fts2 to store data in a way which allows for much faster updates. Groups of documents form segments which are encoded in a btree layered over a table of blocks, with various tricks to make merges fast. This performs 20x-25x faster than fts1 when loading the Enron corpus, and is only slightly slower for queries. (CVS 3474) (check-in: 85272b2f user: shess tags: trunk)
2006-10-11
17:19
Bug fix: named local variable lockStyle as lockingStyle in SQLITE_ENABLE_LOCKING_STYLE block in allocateUnixFile (CVS 3473) (check-in: aa0b96c3 user: aswift 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: 5e8bbb85 user: shess tags: trunk)
17:37
Copy fts1/ to fts2/, changing reference from fts1 to fts2. For future reference, the source versions copied were:

README.txt r1.1 fts1.c r1.37 fts1.h r1.2 fts1_hash.c r1.1 fts1_hash.h r1.1 fts1_porter.c r1.1 fts1_tokenizer.h r1.4 fts1_tokenizer1.c r1.6 (CVS 3471) (check-in: d0d1e7cd user: shess tags: trunk)

13:07
VACUUM now uses a temporary file in the official TEMP folder instead of a file in the same directory as the original database. (CVS 3470) (check-in: b743429d user: drh tags: trunk)
2006-10-09
00:38
Version 3.3.8 (CVS 3469) (check-in: 0658bb9e user: drh tags: trunk)
2006-10-08
18:56
Website changes for version 3.3.8. Remove a C++-ism from test8.c. (CVS 3468) (check-in: 465ce5b2 user: drh 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: 144e3f11 user: shess tags: trunk)
11:43
Fix another UTF conversion problem on x64. Ticket #2008. (CVS 3466) (check-in: d16523e5 user: drh tags: trunk)
2006-10-04
17:35
The snippet generator adds ellipsis between text from different columns. (CVS 3465) (check-in: 6cf1fb9f user: drh tags: trunk)
15:23
Fix UTF conversions for -O2 on gcc 4.1.1. Ticket #2008. (CVS 3464) (check-in: 86a08bb7 user: drh tags: trunk)
11:55
Tests cases automatically remove many of their temporary files. (CVS 3463) (check-in: eef0ec0d 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: df1a4b48 user: drh tags: trunk)
19:12
Modify the makefile(s) to know about the FTS1 module - however FTS1 is turned off by default. Bump the version number to 3.3.8. (CVS 3461) (check-in: 288ff637 user: drh tags: trunk)
19:05
Report the error SQLITE_CORRUPT instead of SQLITE_IOERR if unable to rollback a hot journal that was damaged (for example) by filesystem corruption following a power failure. (CVS 3460) (check-in: 70501e4e user: drh tags: trunk)
17:40
Add the OS-X locking style patches to os_unix.c. Disabled by default. (CVS 3459) (check-in: f4103dea user: drh tags: trunk)
12:08
Fix sqlite3_analyzer so that it works when compiled against Tcl8.5. (CVS 3458) (check-in: e774adce user: drh tags: trunk)
12:04
Fix sqlite3_analyzer so that it works on databases containing virtual tables. (CVS 3457) (check-in: 47c8567f user: drh tags: trunk)
11:42
Add the option to omit offset information from posting lists in FTS1. (CVS 3456) (check-in: fdcea7b1 user: drh tags: trunk)
2006-10-01
20:41
Another typo in the Porter stemmer check-in. (CVS 3455) (check-in: 6696bda1 user: drh tags: trunk)
18:59
Typo in previous check-in. (CVS 3454) (check-in: a7350bf8 user: drh tags: trunk)
18:58
Remove one non-working test case fromthe Porter stemmer tests and add an acknowledgement for the source of the test data (Martin Porter himself.) (CVS 3453) (check-in: 1a2df2a6 user: drh tags: trunk)
18:41
Add a Porter stemmer option to the FTS1 module. (CVS 3452) (check-in: 936b06aa user: drh tags: trunk)
2006-09-29
14:01
Make sure memory does not leak when patching up column names so that they are unique in a join or view. Tickets #1952 and #2002. (CVS 3451) (check-in: fcde6391 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: 8cdf1d6a user: drh tags: trunk)
18:58
More snippet generator improvements and test cases. (CVS 3449) (check-in: 0934d220 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: d3f4ae82 user: drh tags: trunk)
11:41
Avoid segfaults when inserted NULL values into FTS1. (CVS 3447) (check-in: 165645d3 user: drh tags: trunk)
2006-09-26
00:37
Fix to the previous check-in. (CVS 3446) (check-in: 944d5f81 user: drh tags: trunk)
00:34
Performance improvement and bug fix in sqlite3WinDelete(). (CVS 3445) (check-in: 46ac1ac2 user: drh tags: trunk)
2006-09-25
18:05
CVS malfunctioned on the previous check-in. Make sure the revision to date.c was received. Ticket #1991. (CVS 3444) (check-in: 433dac1f user: drh tags: trunk)
18:03
Fix a roundoff error in the %f converter of strftime(). Ticket #1991. (CVS 3442) (check-in: 51b9c755 user: drh tags: trunk)
18:01
Add a pragma for activating proprietary extensions. (CVS 3441) (check-in: c63d34ce user: drh tags: trunk)
18:01
Fix a round-off problem in the %f conversion of strftime(). Ticket #1991. (CVS 3443) (check-in: bf460840 user: drh tags: trunk)
13:48
Bug fix in pragma table_info(). (CVS 3440) (check-in: c037403b user: drh tags: trunk)
13:09
Remove legacy cruft from shell.c. (CVS 3439) (check-in: 815d8f84 user: drh tags: trunk)
2006-09-23
21:44
Fix a bug in the handling of I/O errors introduced by the addition of extended error codes in check-in (3422). (CVS 3438) (check-in: 20d7b294 user: drh tags: trunk)
20:46
Fix documentation typo. Ticket #1986 (CVS 3437) (check-in: 58c32ce3 user: drh tags: trunk)
20:36
Be sure to ignore PRAGMA encoding pragmas if the encoding has already been set for a database. Ticket #1987. This patch also includes some cleanup of the schema parser and initialization logic. (CVS 3436) (check-in: dc797bf4 user: drh tags: trunk)
2006-09-22
23:38
Fix a build problem around sqlite3_overload_function. Only affects so/dll builds. (CVS 3435) (check-in: 791d7093 user: shess tags: trunk)
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: 757fa224 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: 111ca616 user: adamd tags: trunk)
11:02
Be more aggressive with the SQLITE_OMIT_VACUUM macro. Saves about 150 bytes of code space. (CVS 3432) (check-in: 7e618db4 user: drh 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: c7ee60d0 user: drh tags: trunk)
2006-09-18
21:14
Fixed a build problem in sqlite3_extension_init(). (CVS 3430) (check-in: bb2e1871 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 3429) (check-in: cd4e1de8 user: drh 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: efa8fb32 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: 5e35dc1f 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: aa7728f9 user: drh tags: trunk)
2006-09-15
16:58
Add documentation for the sqlite3_extended_result_codes() API. (CVS 3425) (check-in: a6b3f6be user: drh tags: trunk)
16:09
Fix an initialization problem in FTS1. Ticket #1977. (CVS 3424) (check-in: 5a18dd88 user: drh tags: trunk)
12:29
Bug fix and better testing of the extended result codes. (CVS 3423) (check-in: 78ae74db user: drh tags: trunk)
07:28
Add support for extended result codes - additional result information carried in the higher bits of the integer return codes. This must be enabled using the sqlite3_extended_result_code() API. Only a few extra result codes are currently defined. (CVS 3422) (check-in: ba579ddc user: drh tags: trunk)
2006-09-14
21:08
New FTS1 test data based on enron emails. (CVS 3421) (check-in: 01651a32 user: drh tags: trunk)
18:25
Remove file containing real email addresses. Ticket #1978. (CVS 3420) (check-in: 373a575f user: drh tags: trunk)