SQLite

Timeline
Login

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

1449 check-ins using file src/sqlite3ext.h version 1db7d63a

FROM <tble>"). Ticket #3944. (CVS 6838) (check-in: 45fd5419 user: danielk1977 tags: trunk), (SELECT ... FROM tbl WHERE rowid > ) FROM ...". (CVS 5855) (check-in: 6c918c4e user: danielk1977 tags: trunk)
2009-11-10
01:13
Remove from the TCL interface some old code associated with sqlite3_analyzer. (check-in: 01f2271e user: drh tags: trunk)
01:12
Omit some code that is not used when SQLITE_SECURE_DELETE is defined. (check-in: 5a9e7463 user: drh tags: trunk)
2009-11-09
19:30
Fix for lock structure sharing with AFP-style locking (check-in: 62f15c0a user: adam tags: apple-osx)
2009-11-06
17:20
Improved shell "dot" command argument handling. Ticket [f12a9eeedc]. (check-in: 9fb69919 user: shaneh tags: trunk)
04:13
Fix the backup API so that a backup from an empty database to a non-empty database works. Ticket [0bf974bdf9]. The only changes are in assert() statements. (check-in: ddb71cd9 user: drh tags: trunk)
03:33
Merged accidental fork. (check-in: d410cd4e user: shaneh tags: trunk)
03:22
Add some very basic tests for the commands available from the CLI. (check-in: 6bf43338 user: shaneh tags: trunk)
2009-11-05
18:46
Recover an ophaned branch that resulted from some ill-advised "shunning". This check-in should be identical to [bd443f39a9] except that it should be on the trunk. (check-in: 38eaf1ab user: drh tags: trunk)
18:31
Fix an undefined variable on non-Mac builds. (check-in: 9552de8f user: drh tags: apple-osx)
17:27
Do not limit the trigger recursion depth when SQLITE_SMALL_STACK is defined since trigger recursion uses the heap, not the stack. (Closed-Leaf check-in: bd443f39 user: drh tags: shunning-error)
16:29
Add a comment related to code coverage. No changes to code. (check-in: 6bdc2c99 user: drh tags: shunning-error)
04:14
Update maxRow size after shrinking the row buffer (CSV). (Closed-Leaf check-in: d474195a user: shaneh tags: csv_ext)
04:01
Removed line limit on rows. (check-in: ec08b15f user: shaneh tags: csv_ext)
02:34
Initial implementation of a virtual table for CSV files. (check-in: 90e63b7d user: shaneh tags: csv_ext)
2009-11-04
23:02
Fix a typo on the ynVar typedef that unfortunately caused 3.6.20 to be released with a "bug" that causes excess memory usage for Expr objects. This bug should be benign in the sense that the correct answer is still always obtained - it only uses more more memory than is really necessary. (check-in: f1c09aca user: drh tags: shunning-error)
21:49
Do not accept a codec no an in-memory database. (check-in: 6f3081a8 user: drh tags: shunning-error)
18:51
Fix documentation typos. (check-in: 590d4ac1 user: drh tags: shunning-error)
13:30
Version 3.6.20 (check-in: eb7a544f user: drh tags: trunk, release)
13:17
Create a new datatype "ynVar" to hold "nVar" (number of variable) values. This is normally 16-bits can can be 32-bits if SQLITE_MAX_VARIABLE_NUMBER is large enough. (check-in: 24a4d520 user: drh tags: trunk)
01:56
Report errors back up to the ATTACH command if the codec fails to initialize. (check-in: a6c69610 user: drh tags: trunk)
2009-11-03
22:34
Customizations for OSX contributed by Apple. (check-in: 941a01eb user: adam tags: apple-osx)
19:42
Fix compiler warnings on MSVC build. (check-in: 01c4b5b8 user: shane tags: trunk)
19:18
Enhancements to lemon to generate more compact action tables and to avoid making array bounds tests that can never fail on action table calculations. (check-in: 27d8e684 user: drh tags: trunk)
13:08
Force all qsort() calls in mkkeywordhash.c to be stable so that we get predictable results on different platforms. (check-in: 3b02df27 user: drh tags: trunk)
13:02
Adjust the lemon implementation so that it always computes the same PDA regardless of qsort() implementation on the host platform. In other words, make all sorts in lemon stable. (check-in: d66a0f31 user: drh tags: trunk)
01:22
All SQLITE_MAX_VARIABLE_NUMBER to exceed 32767. The sizes of some structures increase when the compile-time parameter is configured this way. (check-in: 16a24b44 user: drh tags: trunk)
2009-11-02
18:44
Bug fix in the recent changes to mkopcodeh.awk. (check-in: 6610cac4 user: drh tags: trunk)
18:14
Update the generator AWK script for opcodes.h so that it always generates opcode numbers in the same order and is not dependent on the hash order of opcode names within AWK. (check-in: e730195f user: drh tags: trunk)
18:01
Do not insert the date and time of generation into the amalgamation. (check-in: 9f6cf13d user: drh tags: trunk)
17:40
Update the configure script for version 3.6.20. (check-in: f19cb105 user: drh tags: trunk)
15:51
Comment changes in support of better documentation. No changes to code. (check-in: 79ab4714 user: drh tags: trunk)
2009-11-01
19:26
Fix compiler warnings. Better comments on some variables associated with LIKE/GLOB processing in the query planner. (check-in: cfa2db0f user: drh tags: trunk)
2009-10-30
14:27
Increase the version number to 3.6.20. (check-in: 61295274 user: drh tags: trunk)
13:26
Version 3.6.16.1 (Leaf check-in: 2a832b19 user: drh tags: release, branch_3_6_16)
13:25
Avoid storing the result register for EXISTS and SELECT in any field of the Expr object - simply return the register number as the return value of the function that codes those expressions. (check-in: 7253f8fa user: drh tags: trunk)
2009-10-29
18:38
Fix a 16-bit integer overflow that might occur in statements that use both an EXISTS clause and IN operator with a RHS holding in excess of 32K entries. (check-in: 65a1f133 user: drh tags: branch_3_6_16)
13:48
Reduce the memory required by prepared statements that use the IN operator with a list on the right and an INTEGER PRIMARY KEY on the left. (check-in: e7984ad2 user: drh tags: trunk)
2009-10-27
18:06
Minor updates and corrections to comments in btreeInt.h. No changes to code. (check-in: ad949fa1 user: drh tags: trunk)
2009-10-26
22:32
Remove additional obsolete code from the sqlite3_release_memory() logic. (check-in: 2eeb6ed8 user: drh tags: trunk)
22:08
Remove some obsolete code within #if 0 that was causing developer concern. (check-in: 1d64e945 user: drh tags: trunk)
2009-10-24
15:51
Fix a compiler warning that occurs when building the TCL interface. (check-in: fc36034b user: drh tags: trunk)
03:04
Another attempt at getting the pTail pointer computations correct for sqlite3_prepare16(). Ticket [3fe897352e]. (check-in: a96b4e8c user: drh tags: trunk)
02:06
In shell, modified to not print informational messages during startup while in "batch mode". Ticket [2cb66577f6]. (check-in: e3898e25 user: shane tags: trunk)
02:00
In shell, changed ".tables" command to not add '%' to specified pattern. This is consistent with other commands that take a LIKE pattern (.dump, .schema, .indices). Updated internal help to better describe LIKE pattern usage. Fixed a few more inconsistencies in error messages. Ticket [6da68f691b]. (check-in: 7201244e user: shane tags: trunk)
01:55
Check-in [19064d7cea] broke the pTail return on sqlite3_prepare16() when the SQL contained surrogates. This check-in restores correct function. Part of ticket [3fe897352e]. (check-in: 65b1e3a4 user: drh tags: trunk)
2009-10-23
18:15
Make sure that UTF16 to UTF8 conversions to not read past the end of the UTF16 input buffer if the last two bytes of the UTF16 happen to be the first half of a surrogate pair. Ticket [3fe897352e] (check-in: 19064d7c user: drh tags: trunk)
01:27
In shell, ensure that do_meta_command() returns consistent error values. Adjusted the text of some error message to be more consistent. Ticket [beb2dd69ad]. (check-in: 1ebac9ed user: shane tags: trunk)
00:37
In shell, modified "import" handling to ensure error code returned correctly on exit. Ticket [bd770b2c52]. (check-in: 009efad0 user: shane tags: trunk)
2009-10-22
21:23
In shell, reworked .header and .echo handling. Updated shell_exec() to (really) handle multiple statements. Tickets [72adc99de9], [7b61b6c6ce], and [eb620916be]. (check-in: 790402c1 user: shane tags: trunk)
20:52
Merge the MD5 checksum logic into the TCL interface. This facilitates building a tclsh that contains both SQLite and MD5. The plan is to use this augmented tclsh to help build the documentation. (check-in: a024c0a8 user: drh tags: trunk)
20:50
Add some sample requirement implementation comments to where.c. (check-in: 9854ad00 user: drh tags: trunk)
18:12
In shell, in shell_exec() logic, use type info if available when outputting in "insert" mode for other types in addition to blobs. Changed shell_exec() to use sqlite_prepare_v2(). Ticket [72adc99de9] and [7b61b6c6ce]. (check-in: ab99faca user: shane tags: trunk)
17:30
Updated shell to output blobs in X'1234' form when in "insert" mode. Ticket [72adc99de9]. (check-in: a2ad9e63 user: shane tags: trunk)
00:20
Add markings on test evidence for R-30323-21917. (check-in: e51af74c user: drh tags: trunk)
00:14
Mention the sqlite3_column_count() function on the same documentation page with all of the other sqlite3_column... interfaces. (check-in: 5354ace5 user: drh tags: trunk)
2009-10-21
14:33
Merge accidental fork back to trunk. (check-in: f63397ad user: shane tags: trunk)
14:11
Modified shell to call output_html_string() for header values in .mode html. Updated output_html_string() to support the 5 basic HTML entities (<,>,&,',"). Ticket [dc3a6e5b31]. (check-in: c8815fcd user: shane tags: trunk)
13:53
Made detectSchemaProblem function and aSchemaTable array static. Ticket [6f8b0c5855]. (check-in: c6f22f3e user: shane tags: trunk)
13:48
Add evidence marks to parse.y. Fix a broken evidence link in e_fkey.tcl. (check-in: 0441d28e user: drh tags: trunk)
03:56
For the shell, changed the output of the errors on lines 2910 and 2914 to goto stderr. I left the timer values going to stdout as all of the other interactive shell commands (startup banner, help, etc.) go to stdout and I felt this was more consistent. Ticket [43db771bb2]. (check-in: 8a8eeb0c user: shane tags: trunk)
03:42
For Windows version of shell, add support for .timer command using the GetProcessTimes() API if available (in the same way getrusage() is used on UNIX.) Ticket [89668ca167]. (check-in: 83216fbe user: shane tags: trunk)
02:00
For Windows VFS, modified xGetLastError() to call FormatMessage() with the FORMAT_MESSAGE_IGNORE_INSERTS option. Additionally updated to ensure strings are returned as UTF8. Ticket [39c85e8a4e]. (check-in: 761396f8 user: shane tags: trunk)
2009-10-20
15:27
Clarify the use of sqlite3_shutdown(). Ticket [f9af981dd2a2]. Comment changes only - no changes to code. (check-in: b2aa48b5 user: drh tags: trunk)
15:01
Fix the VACUUM command so that when the MAIN and TEMP databases have identically named tables, content from the TEMP database does not accidently overwrite MAIN database content. Ticket [d82e3f3721296e905d7e8c9dee718f71a826b0eb]. Note that this bug could potentially lead to database corruption. (check-in: 0bbd8d72 user: drh tags: trunk)
14:23
Remove all mention of sqlite3_next_stmt() from the documentation of sqlite3_close(). (check-in: f494ed38 user: drh tags: trunk)
14:08
Update documentation on the sqlite3_prepare_v2() interface. No changes to code. (check-in: 3b00e769 user: drh tags: trunk)
07:01
Fix cases where modifying bound variables using the clear_bindings() or transfer_bindings() APIs can invalidate a query plan. (check-in: e6808c98 user: dan tags: trunk)
2009-10-19
22:41
Remove an unreachable condition in the WHERE clause processing of bound parameters and replace it with an assert(), for test coverage. (check-in: 3bcd78a1 user: drh tags: trunk)
20:15
Fix an incorrect assert() in vdbeUnbind(). (check-in: 651c1efb user: drh tags: trunk)
18:30
Fix an assert() that may fail if sqlite3_step() is called on a statement after a previous call has already returned SQLITE_SCHEMA. (check-in: 63bf7345 user: dan tags: trunk)
18:11
Remove the sqlite3_reoptimize() API. The same functionality is now provided automatically to queries prepared using prepare_v2(). (check-in: 2c50b3d5 user: dan tags: trunk)
15:52
When generating WHERE clause terms internally for NATURAL and USING joins, identify the table by its position in the FROM list, not by its name or alias. Fix for [b73fb0bd64]. (check-in: 6fe63711 user: dan tags: trunk)
07:50
Use 64-bit arithmetic in the xRead() method of asyncRead. Fix for [94c04eaadb]. (check-in: ca3e41b0 user: dan tags: trunk)
2009-10-17
14:19
Fix a problem in the icu.test script. (check-in: 8a21fdaf user: dan tags: trunk)
13:13
Make sure the target register is allocated before adding the bogus OP_Variable opcode in isLikeOrGlob(). Bugfix for the new sqlite3_reoptimize() logic. (check-in: e74f8dc4 user: drh tags: trunk)
08:26
Add documentation comment for new experimental API sqlite3_reoptimize(). (check-in: c48f8ffe user: dan tags: trunk)
2009-10-16
16:21
Merge the sqlite3_reoptimize() changes into the trunk. (check-in: 50136840 user: drh tags: trunk)
15:59
Fix a problem in the analyze3.test script. (Closed-Leaf check-in: 61174aea user: dan tags: experimental)
15:19
Remove a mutex reference leak from sqlite3_reoptimize(). (check-in: 9f093706 user: dan tags: experimental)
15:05
Comment cleanup in btree.c. (check-in: 32966ba4 user: drh tags: trunk)
14:55
Experimental fix for [f777251dc7]. This may be changed yet. (check-in: 174477bc user: dan tags: trunk)
13:23
Fix comment typos in btreeInt.h. (check-in: 550566a7 user: drh tags: trunk)
2009-10-15
23:03
When a forced rollback occurs, cause all active statements on the same database connection to halt immediately with an SQLITE_ABORT error code. This is a partial fix to ticket [f777251dc7]. (Closed-Leaf check-in: f256bc07 user: drh tags: trunk, experimental)
19:45
On any rollback, immediately interrupt all running statements on the same database connection. This is a partial fix for ticket [f777251dc7]. (Closed-Leaf check-in: c304b44c user: drh tags: experimental)
18:35
Add the experimental sqlite3_reoptimize() API. (check-in: 9bd6f3d8 user: dan tags: experimental)
2009-10-14
11:33
Version 3.6.19 (check-in: c1d499af user: drh tags: trunk, release)
2009-10-13
22:47
Update the configure script for version 3.6.19. (check-in: ac19dbc6 user: drh tags: trunk)
19:19
Fixed warnings with MSVC compile. (check-in: e0aa50c3 user: shane tags: trunk)
18:49
Fix a typo in the test script added for ticket [5ee23731f15]. (check-in: d0f55b5c user: drh tags: trunk)
18:38
Update the TCL wrapper to provide a non-NULL objProc pointer to the Tcl_NRCreateCommand() interface. The TCL gurus say this is needed to support legacy TCL extensions. (check-in: 1b3cfa01 user: drh tags: trunk)
15:42
Add a test case to verify that ticket [5ee23731f15] has been fixed. (check-in: f894ebf8 user: drh tags: trunk)
15:36
When a write transaction fails to being because the database is read-only, fail right away. Do not give the error code an opportunity to be overwritten with SQLITE_OK. Ticket [5ee23731f15]. (check-in: bc110117 user: drh tags: trunk)
13:08
Suppress some harmless compiler warnings. (check-in: 5d381daa user: drh tags: trunk)
12:48
Make sure mem3.c releases its mutex on an sqlite3_shutdown() call. (check-in: 16254ad5 user: drh tags: trunk)
10:39
Add further test cases to e_fkey.test. (check-in: c85e5874 user: dan tags: trunk)
2009-10-12
22:30
Add asserts as evidence that all FK constraints are either immediate or deferred. (check-in: 634ef4fc user: drh tags: trunk)
20:01
When processing FK constraints on changes to parent tables, make sure the names of child tables appear correctly in the output of EXPLAIN QUERY PLAN. (check-in: a4ab5215 user: drh tags: trunk)
18:57
Add more test cases to e_fkey.test. (check-in: 5633cb2b user: dan tags: trunk)
16:02
Fix some mappings from e_fkey.test. (check-in: 171c6713 user: dan tags: trunk)
15:25
Update e_fkey.test to match the latest version of foreignkeys.html. (check-in: a2ca9f1a user: dan tags: trunk)
11:27
Extra test cases mapped to statements in foreignkeys.html. (check-in: ffa6207d user: dan tags: trunk)
08:41
Add further test cases to e_fkey.test. (check-in: d61cc0e1 user: dan tags: trunk)
2009-10-10
15:49
Add tests to e_fkey.test. (check-in: 5ec07fee user: dan tags: trunk)
14:29
Update requirement text for sqlite3_open_blob(). Update evidence comment in e_fkey.test to conform to the latest requirement phrasing. (check-in: 89c548ac user: drh tags: trunk)
2009-10-09
18:16
Add test cases to e_fkey.test. (check-in: e391dfe7 user: dan tags: trunk)
2009-10-08
19:02
Test a couple of the examples in foreignkeys.html. (check-in: a2fb7902 user: dan tags: trunk)
17:42
Add test cases to test file "e_fkey.test". (check-in: 23e0f61a user: dan tags: trunk)
13:42
Fix a problem in the legacy genfkey code to do with column names that require quoting. (check-in: 273ccbf1 user: dan tags: trunk)
11:57
Add tests to test/e_fkey.test. (check-in: 533703d7 user: dan tags: trunk)
06:24
Update triggerC.test to match the change to the way the trigger-recursion limit is handled. (check-in: 58069252 user: dan tags: trunk)
01:43
Fix a segfault that can occur following an OOM fault while renaming a table holding foreign key constraints. (check-in: 33973814 user: drh tags: trunk)
2009-10-07
23:42
Use memcpy() rather than structure assignment so that memcmp() can later be used for comparison. Ticket [8550ecca70] (check-in: 56f609da user: drh tags: trunk)
18:41
Add some tests of statements in foreignkeys.html. (check-in: 83828679 user: dan tags: trunk)
16:04
Add a missing OP_Close opcode to VDBE programs that check for FK constraint violations. (check-in: 5caa4a2b user: dan tags: trunk)
11:29
Update the header comment for sqlite3_blob_open to note that it is not possible to write to a column that is indexed, part of a primary key or, if foreign key support is enabled, part of a foreign key. (check-in: 2fd487fd user: dan tags: trunk)
10:43
Update header file comments describing the sqlite3_changes and sqlite3_total_changes functions to describe how changes made by foreign key actions are handled. (check-in: 4c342c02 user: dan tags: trunk)
2009-10-06
14:59
Change tclsqlite.c to use the Tcl_NRxxx() APIs in Tcl versions 8.6 and later. (check-in: e9f72f1d user: dan tags: trunk)
2009-10-05
05:40
Fix some errors in the guttman versions (disabled by default) of the algorithms in rtree.c. (check-in: 64bad00b user: dan tags: trunk)
2009-10-03
07:04
Handle an SQLITE_IGNORE returned when requesting authorization to read parent key columns by pretending the parent key columns contain NULL values. (check-in: 3c24df38 user: dan tags: trunk)
2009-10-02
15:29
Add one more authentication test to fkey2.test to cover an untested branch. (check-in: e4fa8be7 user: dan tags: trunk)
14:23
When inserting a row into a child table, invoke the authorization callback to request permission to read the parent key columns. (check-in: 9842f2d5 user: dan tags: trunk)
06:35
Add a test to check that the incrblob API cannot be used to write to an IPK column. Also a comment to explain why the incrblob code does not need to check if a column is part of a parent key before writing to it. (check-in: dca2a7f6 user: dan tags: trunk)
2009-10-01
17:13
Add test cases to cover the branches added by the previous commit. (check-in: aaa005b6 user: dan tags: trunk)
16:09
If an update does not modify any child or parent key columns, omit foreign key processing for the statement. (check-in: edff3500 user: dan tags: trunk)
04:35
Add tests to check that FK support interacts with count-changes correctly. (check-in: 5b836615 user: dan tags: trunk)
2009-09-30
08:11
Remove unreachable branches from fkey.c. Add a few tests to cover the remaining branches. (check-in: 0a0a17d8 user: dan tags: trunk)
04:28
Change a couple of comments to use "SQLITE_MUTEX_OMIT" instead of OMIT_MUTEX. (check-in: b733e939 user: dan tags: trunk)
2009-09-29
16:38
Use the affinity and collation sequence associated with the parent key when finding child table rows to apply a foreign key action to. (check-in: 9a4b7ec2 user: dan tags: trunk)
15:41
Check that a unique index uses the default collation sequences for each column before using it as part of a foreign key constraint operation. (check-in: 64154174 user: dan tags: trunk)
11:28
Remove an unused variable from fkey.c. (check-in: 582bd768 user: dan tags: trunk)
06:33
Various fixes so that "make test" works with OMIT_FOREIGN_KEY, OMIT_TRIGGER and OMIT_ALTER_TABLE. (check-in: e4eb227b user: dan tags: trunk)
2009-09-28
18:52
Ignore foreign key mismatch errors while compiling DROP TABLE commands. (check-in: 5b4d4637 user: dan tags: trunk)
14:49
Fix the DROP TABLE command so that it cannot be used to bypass foreign key constraints (if foreign key support is enabled). (check-in: 8353808c user: dan tags: trunk)
11:54
Fix some foreign key constraint related problems that occur when a row refers to itself. (check-in: 9e503e2d user: dan tags: trunk)
2009-09-26
17:51
When ALTER TABLE RENAME TO is used to change the name of a table that is the parent table of a foreign key constraint, modify that foreign key constraint to use the new table name. (check-in: b4a10c39 user: dan tags: trunk)
2009-09-25
17:03
Avoid checking if an insert or delete has "fixed" an outstanding FK constraint violation if the constraint counter indicates that the database contains no such violations. (check-in: 519144ac user: dan tags: trunk)
12:00
Fix comments in fkey2.c to reflect the immediate-constraint-counter approach. (check-in: 9fd54b0a user: dan tags: trunk)
11:26
Prevent ALTER TABLE from being used to add a column with a REFERENCES clause and a non-NULL default value while foreign key support is enabled. (check-in: 353b1b18 user: dan tags: trunk)
2009-09-24
18:19
Fixes and test cases to make sure the affinity and collation sequence associated with the parent key is used when comparing it with a child key value. (check-in: 76e8e74b user: dan tags: trunk)
16:52
Fix a bug in the code for REPLACE conflict handling on IPK columns when there are no indexes on the table. Triggers and foreign key processing were being bypassed. (check-in: beb2094f user: dan tags: trunk)
15:16
Fix a problem in fkey.c when a child key is the IPK of its table. (check-in: 8a000a8a user: dan tags: trunk)
14:27
Remove the ALWAYS() added by the previous check-in. It is not needed. (check-in: 36568963 user: drh tags: trunk)
13:48
Comment enhancements. Add an ALWAYS macro in fkey.c to indicate a branch that is always taken. (check-in: d5b714cf user: drh tags: trunk)
11:31
Ensure foreign key related processing takes place when rows are deleted from the database by REPLACE conflict handling. (check-in: 3f40c142 user: dan tags: trunk)
10:42
Use sqlite3FkOldmask() in delete.c instead of assuming that foreign key constraints always require all columns of the deleted row to be stored in registers. (check-in: ce554a39 user: dan tags: trunk)
09:05
Remove unused parameter from sqlite3CodeRowTrigger(). Fix header comments for this function and CodeRowTriggerDirect(). (check-in: 0443f7c9 user: dan tags: trunk)
00:09
Make sure a transaction is available for rollback whenever a REDUCE conflict resolution occurs and there is the possibility to ABORT. Ticket [4a03edc4c8c] (check-in: f0c56fa9 user: drh tags: trunk)
2009-09-23
18:49
More fkey tests. (check-in: 2d544bd5 user: shane tags: trunk)
18:07
Fix a problem with FK constraints that implicitly map to a composite primary key. (check-in: e0a48d53 user: dan tags: trunk)
17:31
Fix a problem in the fkey_malloc.test script. (check-in: 0ce1efa4 user: dan tags: trunk)
17:30
Do not check immediate foreign key constraints until the end of the statement. This matches the postgres behaviour. (check-in: 1a32149c user: dan tags: trunk)
15:51
Modify the ".dump" command on the CLI so that it always issues a PRAGMA foreign_keys=OFF at the top of the output. (check-in: 0755b9b6 user: drh tags: trunk)
14:45
Change the version number to 3.6.19. Fix a couple of incorrect testcase() macros associated with the new IS and IS NOT operators in expr.c. (check-in: e3b73394 user: drh tags: trunk)
13:59
Disallow using the implicit rowid column as the parent key of an FK constraint. (check-in: a5f7e71f user: dan tags: trunk)
13:39
Add test cases for the IS and IS NOT operator. (check-in: 101ed58c user: drh tags: trunk)
12:06
Add extra tests for foreign key support. (check-in: 7d086afe user: dan tags: trunk)
08:43
Add missing comments to fkey.c. Also, change the terminology used for comments and names in fkey.c from "referenced/referencing" to "parent/child". This is arguably less correct, but is easier to follow. (check-in: 540c2d18 user: dan tags: trunk)
03:01
Do not run ON UPDATE actions of a foreign key constraint unless at least one column value really does change. (check-in: 71ac8e28 user: drh tags: trunk)
02:29
Generalize the IS and IS NOT operators so that their right-hand side can be an arbitrary expression and not simple the constant NULL. They work like = and <> except that NULL values compare equal to one another an unequal to everything else. (check-in: 98853f61 user: drh tags: trunk)
2009-09-22
20:08
Factor the UMINUS and UPLUS tokens out of the parser so that the parser tables can go back to using 8-bit values instead of 16-bit values. (check-in: 3fc938c9 user: drh tags: trunk)
19:53
The NO ACTION action really should be no-action and not RESTRICT. (check-in: 55b263fa user: drh tags: trunk)
16:55
Fix another OOM related problem in fkey.c. (check-in: e2bc51bc user: dan tags: trunk)
16:08
Fix a problem with ON DELETE SET DEFAULT actions. (check-in: 94069950 user: dan tags: trunk)
15:53
Fix an OOM related crash in fkey.c. (check-in: 635d6a77 user: dan tags: trunk)
13:25
Allow specific exclusion of localtime_s() usage on Windows. (check-in: 216bcda7 user: shane tags: trunk)
07:13
Fix compilation errors when OMIT_FOREIGN_KEY is defined. (check-in: c447cb37 user: dan tags: trunk)
2009-09-21
18:56
Fix a problem with foreign key constraints that map from and IPK column. (check-in: 84129052 user: dan tags: trunk)
16:34
Fix compilation with both OMIT_UTF16 and ENABLE_STAT2 defined. Ticket [56928bd084]. (check-in: cd850d49 user: dan tags: trunk)
16:06
Fix compilation with OMIT_TRIGGER defined. Ticket [1ff6d29030]. (check-in: fb6ceed3 user: dan tags: trunk)
2009-09-19
17:59
Add fkey.c to the autoconf and amalgamation build systems. (check-in: aab7a4b3 user: dan tags: trunk)
17:00
Check in implementation of foreign key constraints. (check-in: d5d39981 user: dan tags: trunk)
2009-09-17
00:41
When coding a trigger, assume that the "oldmask" requires all columns until we know otherwise. That pessimistic assumption assures that all necessary parameters are available on a cascading delete trigger. Ticket [e25d9ea771f] (check-in: 03e464be user: drh tags: trunk)
2009-09-14
23:47
Make sure sufficient space is allocated for at least one VDBE cursor when autoincrement is used. Ticket [a696379c1f088]. (check-in: 2b2a1ef7 user: drh tags: trunk)
2009-09-11
18:28
Set the execute permission bit on "configure". (check-in: f8c02b2b user: drh tags: trunk)
17:59
Make sure the (unsupported) configure script in the source tree has execute permission prior to constructing a tarball. Ticket [65bbb65a47ce]. (check-in: 5e0e941f user: drh tags: trunk)
14:05
Version 3.6.18 (check-in: b084828a user: drh tags: trunk, release)
2009-09-10
22:30
Omit the mutexIsInit test variable when mutexes are disabled. (check-in: 3ea10434 user: drh tags: trunk)
20:23
Fixed some warnings and an assert in the WINCE code when compiling under MSVC. (check-in: f42ec993 user: shane tags: trunk)
19:20
Make sure the threadsOverrideEachOthersLocks variable is only referenced by linux systems on a threadsafe compile. (check-in: e9d064bd user: drh tags: trunk)
19:09
Cleanup of warnings on MSVC build. (check-in: 5588cc96 user: shane tags: trunk)
18:26
Update an r-tree test to account for changes in the query planner. (check-in: e5ce66d4 user: dan tags: trunk)
18:17
Define SQLITE_TEST when compiling mem5.c for testfixture. (check-in: 6b16f3c9 user: dan tags: trunk)
18:04
Fix a problem in test script corrupt.test. (check-in: dad2b74a user: dan tags: trunk)
17:45
Add assert() statement to verify that new mutexes are not allocated when the mutex subsystem is uninitialized. (check-in: 1183c533 user: drh tags: trunk)
16:14
Fix a problem with the sqlite3VdbeMayAbort() assert failing following an OOM. (check-in: b3027863 user: dan tags: trunk)
10:15
Remove an ALWAYS macro around an expression that is sometimes false. (check-in: f2a9ee72 user: dan tags: trunk)
02:54
Reduce default SQLITE_MAX_TRIGGER_DEPTH when SQLITE_SMALL_STACK is defined. (check-in: 913fb70e user: shane tags: trunk)
2009-09-09
18:46
Trying to open a transaction in one thread and close it in another is a misuse with LinuxThreads. Doing so may cause memory and file-descriptors to be leaked. Update an assert() and some test cases to account for this. (check-in: ef99eb57 user: dan tags: trunk)
16:10
Suppress some harmless compiler warnings. (check-in: f0c72a53 user: drh tags: trunk)
15:29
Bug fix in the SQLITE_OPEN_PRIVATECACHE option added a few minutes ago. (check-in: f3a0f23b user: drh tags: trunk)
15:06
Add some tests that involve BEFORE UPDATE or BEFORE DELETE triggers messing with the row being updated or deleted. SQLite behaviour in this scenario is undefined, so the tests just check that the behaviour is relatively sane and there are no crashes. (check-in: 9a4c59a2 user: dan tags: trunk)
14:48
Update the README file to state that TCL is required in order to run the makefiles for SQLite. Ticket [7d96113ff]. (check-in: ba20091a user: drh tags: trunk)
14:17
Added SQLITE_OPEN_SHAREDCACHE and SQLITE_OPEN_PRIVATECACHE flags as possibilities to sqlite3_open_v2(), to override the global shared cache mode setting. Ticket [9fd0bc36639c15] (check-in: f509eb8b user: drh tags: trunk)
12:41
Increase the size of bitvec objects to 1024 bytes on 64-bit systems. (check-in: f1272b90 user: drh tags: trunk)
11:43
Add a test case to show that 29ab7be99f is fixed. (check-in: 135d656a user: dan tags: trunk)
11:37
Add a complicated assert() to check that statement transactions are opened when required. (check-in: 28aa1f4e user: dan tags: trunk)
2009-09-08
19:15
Combine the OP_Statement and OP_Transaction opcodes. (check-in: aec9dbd8 user: dan tags: trunk)
15:55
If recursive-triggers are enabled, fire DELETE triggers if database rows are removed as a result of OR REPLACE conflict resolution. (check-in: 85cb0c94 user: dan tags: trunk)
13:40
Additional simplifications in support of structural testing. (check-in: 4ab8c841 user: drh tags: trunk)
02:27
Further simplifications to the VDBE - removing functionality that is no longer used. (check-in: b271e166 user: drh tags: trunk)
01:14
Code simplifications, especially to the pseudo-table logic, and comment improvements. (check-in: 52449a95 user: drh tags: trunk)
2009-09-07
18:14
Add the SQLITE_LIMIT_TRIGGER_DEPTH option to sqlite3_limit(). (check-in: d7dc8b43 user: drh tags: trunk)
17:41
Merge 1958db4493 and 26cd015c0e. (check-in: ecbe0832 user: dan tags: trunk)
17:32
Fix a bug where a condition was incorrectly being compiled out when SQLITE_OMIT_VIRTUALTABLE was defined. (check-in: 1958db44 user: dan tags: trunk)
04:38
Warning cleanup from the MSVC compile. (check-in: 26cd015c user: shane tags: trunk)
03:48
Attempt to handle numbers at the limits of the IEEE 754 range better (nan.test now passes). (check-in: 2a74ae19 user: shane tags: trunk)
02:46
Changes to internal AtoF to improve "accuracy" when measured against built-in GCC atof(). (check-in: 438e1577 user: shane tags: trunk)
2009-09-03
16:23
Add the "unix-wfl" VFS that does whole-file locking in order to help NFS do better cache coherency. (check-in: 2aeab80e user: drh tags: trunk)
01:18
Do not reuse function parameters in subsequent expressions since the function call might have triggered a text encoding change. Fix for ticket [2ea2425d34be]. (check-in: f22e3887 user: drh tags: trunk)
2009-09-02
19:04
Documentation updates for the version info #defines and C interfaces. (check-in: 69055e9b user: drh tags: trunk)
2009-09-01
17:28
Fix a problem in main.c. SQLITE_NoRecTriggers -> SQLITE_RecTriggers. (check-in: 5ac69ed6 user: dan tags: trunk)
17:11
Change "PRAGMA disable_recursive_triggers" to "PRAGMA recursive_triggers". Also a fix for compiling with OMIT_TRIGGER defined. (check-in: e016cca3 user: dan tags: trunk)
16:39
Merge in changes to support recursive invocation of triggers (disabled by default). (check-in: c1b388c3 user: dan tags: trunk)
16:19
Add new test script triggerC.test. (check-in: a2a062a4 user: dan tags: trunk)
12:16
More fixes and comment updates. (check-in: 38a9327b user: dan tags: trunk)
2009-08-31
16:09
More thorough initialization of a buffer when writing the rollback journal header, in order to prevent a harmless valgrind warning. CVSTrac ticket #4039 (check-in: 5e2f5496 user: drh tags: trunk)
15:27
More fixes for test cases. (check-in: 85d9f23b user: dan tags: trunk)
08:22
Fix some authorization callback problems. (check-in: 8a746fbf user: dan tags: trunk)
05:39
Merge with main branch. (check-in: 6e09e287 user: dan tags: trunk)
05:23
Fix another test problem and some instances where an OOM may cause a segfault. (check-in: 31199db0 user: dan tags: trunk)
2009-08-30
11:42
Fixes for new triggers scheme. (check-in: 9eb91efd user: dan tags: trunk)
2009-08-28
18:53
Changes to support recursive triggers. (check-in: 9b9c1921 user: dan tags: trunk)
00:49
Add a new source code logo gif. (check-in: 6abcba10 user: drh tags: trunk)
2009-08-27
17:56
Patch to the named semaphore locking mechanism used by VxWorks. (check-in: 609c5341 user: drh tags: trunk)
2009-08-26
00:26
Updates to the pluggable page cache documentation. (check-in: 3085ad76 user: drh tags: trunk)
2009-08-25
16:28
Remove an unreachable branch from where.c in order to restore 100% branch test coverage. Add assert() and testcase() macros to verify that the branch is unreachable. (check-in: 58db7e71 user: drh tags: trunk)
15:56
Initialize variables differently in the range processing logic of where.c in order to make sure variables are always initialized even following an OOM error. (check-in: 3fb3686a user: drh tags: trunk)
14:59
Attempt to clarify the meaning of a "parameter" in the sqlite3_bind() API documentation. (check-in: 9389e6a7 user: drh tags: trunk)
14:24
Make sure that the output of EXPLAIN is right when the P4 argument of an opcode is of type P4_MEM with the MEM having type MEM_Blob. (check-in: 6a623e6c user: drh tags: trunk)
13:53
Avoid calling sqite3VdbeRecordCompare() with uninitialized memory following an OOM. Doing so is harmless, but it worries valgrind. (check-in: d33b9eb2 user: drh tags: trunk)
13:10
Fix an uninitialized variable in sqlite3VdbeIdxRowid(). (check-in: 6e787e18 user: drh tags: trunk)
12:11
Merge together the os_unix.c fix of [aa6acfa8ca] and the trigger fix of [dee1b8eb40]. (check-in: 1e2c6e13 user: drh tags: trunk)
05:57
Fix a bad interaction between "proxy-locking" and aa6acfa8ca. (check-in: 2a5c9e1d user: dan tags: trunk)
2009-08-24
19:37
Update the version number to 3.6.18, even though the actual release of that version is still a few weeks away. (check-in: c0ea4e9a user: drh tags: trunk)
18:57
Fix some errors in aa6acfa8ca. (check-in: 82d1934a user: dan tags: trunk)
01:35
Run the column cache in a new context when generating code for trigger programs. Fix for ticket [efc02f9779]. (check-in: dee1b8eb user: drh tags: trunk)
2009-08-22
19:17
Remove an obsolete documentation file left over from SQLite version 1.0. (check-in: f7eb1efc user: drh tags: trunk)
11:39
Fix a problem in os_unix.c where a malloc failure could lead to a leaked file descriptor. (check-in: aa6acfa8 user: dan tags: trunk)
2009-08-21
17:18
When a database file is opened, try to find an unused file descriptor to reuse. This change affects unix (and other systems that use os_unix.c) only. Fix for cvstrac ticket #4018. (check-in: 9b4d9ab6 user: dan tags: trunk)
13:22
Change the expression code generator to account for the fact that the new sqlite3AtoF() never returns NaN. Also, clarification of a comment in where.c. (check-in: 75f596a0 user: drh tags: trunk)
08:29
Add assert() statements to os_unix.c to check that the mutex is held when it should be. (check-in: 11a669b6 user: dan tags: trunk)
02:13
Updated sqlite3AtoF() that performs slightly better with GCC, and significantly better with MSVC. (check-in: f084f5a8 user: shane tags: trunk)
02:07
Updates for test_init.c for configure and other consistency changes. (check-in: 3ba316e9 user: shane tags: trunk)
2009-08-20
23:05
Remove a redundant OOM test from the sqlite_stat2 analysis loader. (check-in: d30ceeb8 user: drh tags: trunk)
20:05
Simplifications to the range-scan logic in support of structural testing. (check-in: bbbee810 user: drh tags: trunk)
18:14
Continuing refinements of the range-scan optimizations in where.c. The range scores are changed from an integer 1..9 to 0..100. (check-in: f0c24b5f user: drh tags: trunk)
16:11
Change the code that collects samples for sqlite_stat2 so that the first sample taken is the (nRow/(2*SQLITE_INDEX_SAMPLES))th entry in the index, where nRow is the total number of index entries. (check-in: cbfe6e9d user: dan tags: trunk)
13:45
Incremental code and comment cleanup in where.c. There is more to be done. (check-in: 4a5d9550 user: drh tags: trunk)
02:49
Set the "type" correctly of built-in BINARY collating sequences for UTF16. (check-in: 167644f3 user: drh tags: trunk)
02:34
All the sqlite3GetCollSeq() function to specify an arbitrary text encoding. (check-in: 4ee44322 user: drh tags: trunk)
2009-08-19
22:14
Make sure that sqlite3ValueFromExpr() sets the "type" field of the sqlite3_value object correctly when the value is a floating point number. (check-in: 2467eb68 user: drh tags: trunk)
17:17
Change the way an Expr that has been converted to TK_REGISTER stores its original opcode. The previous method, overloading Expr.iColumn, did not work in all cases. (check-in: 71ea9d0e user: dan tags: trunk)
16:34
Fix an assert() failure that may follow an OOM error. (check-in: 14a715c5 user: dan tags: trunk)
16:21
Merge 29cafcfdcc and a6f39181a7. (check-in: 740a93e8 user: dan tags: trunk)
15:57
Documentation improvements in sqlite.h.in. No changes to code. (check-in: a6f39181 user: drh tags: trunk)
15:34
Add some tests that use the sqlite_stat2 table in shared-cache mode. (check-in: 29cafcfd user: dan tags: trunk)
14:42
Merge with 709e16145e. (check-in: 6c8a0e2b user: dan tags: trunk)
14:34
Clean up sqlite_stat2 related code. Add test cases. (check-in: aa728e06 user: dan tags: trunk)
09:09
Fix a problem where a buffer allocated from a lookaside pool was being released using the system free(). (check-in: 67207a15 user: dan tags: trunk)
08:18
Add the SQLITE_ENABLE_STAT2 macro. If this is not defined at build-time, the stat2 table is not created, populated, or used. (check-in: 362665e8 user: dan tags: trunk)
04:24
Adjust sync count for SQLITE_DISABLE_DIRSYNC compiler option. (check-in: 709e1614 user: shane tags: trunk)
2009-08-18
16:24
Change the sqlite_stat2 schema to be more flexible. (check-in: ded9dec6 user: dan tags: trunk)
16:05
Unknown functions in the DEFAULT clause of a table cause an error when the DEFAULT value is needed. Ticket [2d401a94287b5]. (check-in: 093917d7 user: drh tags: trunk)
15:33
Move the allocation of the memsys5 mutex into the initializer. (check-in: 4e377a09 user: drh tags: trunk)
14:48
Fix obscure issues with the memsys5 memory allocator. Arrange that the xRealloc() interface to memory allocators is only called with a value that has been through xRoundup(). (check-in: 577bd6f1 user: drh tags: trunk)
12:16
When shutting down the memsys5 memory allocator, be sure to clear the mutex pointer in case the next startup does not use a mutex because it is configured differently. (check-in: d4e7e2d8 user: drh tags: trunk)
01:54
Fix a bug in mem5.c which would cause an infinite loop on an attempt to allocate more than 1073741824 bytes of contiguous memory. Also, some cleanup of mem5.c. More work to do on this. (check-in: 783b751a user: drh tags: trunk)
2009-08-17
17:06
First version of sqlite_stat2 (schema forces exactly 10 samples). (check-in: dd96bda2 user: dan tags: trunk)
16:01
Always call sqlite3_malloc() in sqlite3OsInit(), even when not compiled with SQLITE_TEST. (check-in: b98a8706 user: drh tags: trunk)
15:52
Move error simulation code from the sqlite3_os_init() functions into a wrapper. (check-in: 67ad21ab user: dan tags: trunk)
15:31
More documentation and comment updates for sqlite3_initialize/shutdown interface changes to handle failures. (check-in: 32509bc7 user: shane tags: trunk)
15:16
Add tests to check that sqlite recovers from an error in sqlite3_initialize() correctly. (check-in: 904a371c user: dan tags: trunk)
13:42
Enhanced documentation and minor code tweaks in preparation for hardening the sqlite3_initialize/shutdown interfaces against initialization failures. (check-in: 98c49e61 user: drh tags: trunk)
09:29
Add a test to verify that 3.6.17 releases read-locks obtained to read the database schema even if the connection is not currently in auto-commit mode. (check-in: 78dfe832 user: dan tags: trunk)
2009-08-14
18:18
Update the amalgamation builder so that it avoids putting redundant SQLITE_API macros on declarations. (check-in: 0d5b0587 user: drh tags: trunk)
17:53
Work around an over-zealous optimization in GCC 4.3.3. See CVSTrac ticket #4027. (check-in: 9cbe3654 user: drh tags: trunk)
17:01
Fix a case where SQLite may write past the end of a buffer as a result of a corrupted database file. (check-in: 43321a55 user: dan tags: trunk)
16:15
Fix to the "publish.sh" script that was broken by the previous check-in. (check-in: 34c21210 user: drh tags: trunk)
16:01
Incorporate fossil-scm version information into the build. Add the SQLITE_SOURCE_ID macro to the header. Add the sqlite3_sourceid() interface. Add the sqlite_source_id() SQL function. (check-in: 302dabe9 user: drh tags: trunk)
2009-08-13
20:15
Fix typos in comments used to generate documentation. CVSTrac tickets #4028 and #4029. (check-in: 1fc73b91 user: drh tags: trunk)
19:54
Tweak to the new whereB.test file to make it more consistent. (check-in: 06098505 user: drh tags: trunk)
19:21
If a binary operator in a WHERE clause that should be performed with no affinity conversions applied to its operands (see http://www.sqlite.org/datatype3.html) is optimized by index lookup, do not apply any conversions to the key value before looking it up in the index. Fix for [93fb9f89d6]. (check-in: e72186f2 user: dan tags: trunk)
18:14
Enhancements to the whereB.test to check more affinity corner cases. (check-in: 10484598 user: drh tags: trunk)
17:14
Add a test case for the affinity problem reported by ticket [93fb9f89d6]. (check-in: 149ec24e user: drh tags: trunk)
15:42
Merge the accidental fork. (check-in: 86a06dd0 user: drh tags: trunk)
15:13
Fix a typo on a comment in sqlite3VdbeIntegerAffinity(). (check-in: b5a709d3 user: drh tags: trunk)
07:09
Changes to the query planner that improve the order in which tables/indexes are scanned in join queries. (check-in: 19f799b3 user: dan tags: trunk)
2009-08-12
15:34
Fixed some compiler warnings in WINCE only sections when using the MSVC compiler. (check-in: 1f0a93e1 user: shane tags: trunk)
11:45
Make sure the large-file support macros occur first in sqliteInt.h. Fix for CVSTrac ticket #4022. (check-in: b0848925 user: drh tags: trunk, cvs-to-fossil-cutover)
2009-08-11
05:50
Instead of adding SQLITE_API macros sqlite3.h while creating sqlite3.c, add them as part of generating the sqlite3.h target, while copying from sqlite.h.in to sqlite3.h. This fixes a build problem that was causing multiple SQLITE_API macros to be added to a single line of sqlite3.h, and the problem cited by #4016. (CVS 6971) (check-in: 7f481074 user: danielk1977 tags: trunk)
2009-08-10
17:48
Reduce the maximum supported sector size to 64KiB. (CVS 6970) (check-in: 8e1e0ba2 user: drh tags: trunk)
15:16
Version 3.6.17 (CVS 6969) (check-in: 36650102 user: drh tags: trunk, release)
10:18
Update a couple of tests in corrupt7.test to account for a change in the error message text emitted by SQLite. (CVS 6968) (check-in: 3172a296 user: danielk1977 tags: trunk)
04:37
Exclude a static function in test1.c from the build when OMIT_DEPRECATED is defined. This avoids a compiler warning that occurs with some compilers. (CVS 6967) (check-in: ace49950 user: danielk1977 tags: trunk)
04:26
Change mallocI.test to close a database connection that was being left open. (CVS 6966) (check-in: 4f0096d7 user: danielk1977 tags: trunk)
03:57
Removed some warnings from the MSVC compile. (CVS 6965) (check-in: ee034cfc user: shane tags: trunk)
03:23
Fixed "Interlocked" logic error that prevented the "static" mutexes from being released when sqlite3_shutdown() is called. Ticket #4011. (CVS 6964) (check-in: 04cafb7e user: shane tags: trunk)
2009-08-08
18:01
Suppress various compiler warnings. (CVS 6963) (check-in: 257e9b57 user: drh tags: trunk)
2009-08-07
16:56
Enhancement to (6844). If sqlite3_exec() is to return SQLITE_NOMEM because it fails to allocate space for an error message, set the database error-code to SQLITE_NOMEM too. (CVS 6962) (check-in: 8293fa19 user: danielk1977 tags: trunk)
2009-08-06
18:36
Mark the rtreeUpdate function as static. (CVS 6961) (check-in: b6bdfdc6 user: danielk1977 tags: trunk)
17:43
Alternative fix for ticket #3810. This is a replacement for check-in (6956). (CVS 6960) (check-in: ba1afc04 user: drh tags: trunk)
17:40
Change a hyperlink label on shared cache mode documentation. No changes to code. (CVS 6959) (check-in: 3d08ca0e user: drh tags: trunk)
2009-08-05
04:08
Simplified conditional for read-only lock in winceLockFile() function. Ticket #3991. (CVS 6958) (check-in: a1c184cd user: shane tags: trunk)
2009-08-01
18:22
Make sure all database connections are closed at the end of the test case for ticket #3810. (CVS 6957) (check-in: 9bca5a0e user: drh tags: trunk)
16:27
Return a better error message when problems are encountered parsing a TEMP trigger or TEMP view that references objects in other databases that have been modified or dropped. Ticket #3810. (CVS 6956) (check-in: 102785b9 user: drh tags: trunk)
15:54
Add a testcase for ticket #3810. (CVS 6955) (check-in: 29972f74 user: drh tags: trunk)
15:09
Fix a segfault following OOM that was introduced by check-in (6949) which was a fix for ticket #3997. (CVS 6954) (check-in: 359d78e1 user: drh tags: trunk)
15:04
Increment the version number in preparation for the next release. (CVS 6953) (check-in: 12d9b873 user: drh tags: trunk)
2009-07-31
06:14
Fix a bug in where.c that could cause SQLite to write to freed memory while compiling a query with many terms in the WHERE clause. (CVS 6952) (check-in: 8161af84 user: danielk1977 tags: trunk)
2009-07-29
06:04
Add a test to mallocI.test to show that a shared lock is correctly released if an OOM condition occurs while parsing a database schema. (CVS 6951) (check-in: 5a82620e user: danielk1977 tags: trunk)
2009-07-28
16:44
Add the experimental API sqlite3_strnicmp(). Modify fts3 so that in terms like 'column_name:token' the column_name is interpreted in a case-insenstive fashion. Ticket #3996. (CVS 6950) (check-in: 4571aa9e user: danielk1977 tags: trunk)
13:30
When flattening a SELECT query, do not discard collation sequences explicitly attached to expressions in the parent query. Fix for #3997. (CVS 6949) (check-in: b2784cf5 user: danielk1977 tags: trunk)
08:43
Fixed reversed labels in WHERETRACE() statement. Debugging code only. (CVS 6948) (check-in: 614a8d83 user: shane tags: trunk)
2009-07-27
14:15
If there is a hot-journal in the file-system, a connection with journal_mode=memory set may have to open it to effect rollback. Account for this in pager_end_transaction(). This prevents an assert from failing in the in-memory journal permutation test. (CVS 6947) (check-in: 224bc69a user: danielk1977 tags: trunk)
11:41
Do not simulate OOM conditions in the sqlite3OsXXX() calls if the underlying file is an in-memory journal file. (CVS 6946) (check-in: d4868117 user: danielk1977 tags: trunk)
10:05
When extracting values from a record to use in an UPDATEd version of that record, apply OP_RealAffinity if required. Fix for #3992. (CVS 6945) (check-in: 3616766a user: danielk1977 tags: trunk)
2009-07-25
22:13
The noReadlock property on a pager object implies the readOnly property. Use this fact to simplify the logic in sqlite3PagerSharedLock(). (CVS 6944) (check-in: 886e665f user: drh tags: trunk)
19:31
Remove obsolete assert and testcase macros related to ticket #2565 (CVS 6943) (check-in: f0024b31 user: drh tags: trunk)
17:42
Adjust memory size computations to avoid a conditional that is always false on 64-bit systems. (CVS 6942) (check-in: 04211e6a user: drh tags: trunk)
17:39
Change an unreachable condition in PagerSharedLock to a NEVER(...). Add an assert to pager_error() to show that it is never called to put an in-memory pager to the error-state. (CVS 6941) (check-in: 1d931f77 user: danielk1977 tags: trunk)
17:33
Change a condition to a '%' operator in bitvec.c. (CVS 6940) (check-in: 10250fe5 user: drh tags: trunk)
17:08
More simplifications to pager.c. (CVS 6939) (check-in: 533d6cc6 user: drh tags: trunk)
15:24
Simplifications and comment improvements to pager.c in support of coverage testing. (CVS 6938) (check-in: 5b70b5c1 user: drh tags: trunk)
14:18
Add a NEVER() on an always-false conditional in pager.c. Make sure the text of the master journal file is zero-terminated before trying to process it - to prevent a buffer overrun in strlen(). (CVS 6937) (check-in: cc9430e3 user: drh tags: trunk)
13:42
Remove the "proc zeroblob" implementation from incrvacuum2.test. It is no longer required as of (6906) and, as #3988 points out, unreliable. (CVS 6936) (check-in: 03153831 user: danielk1977 tags: trunk)
11:46
Add files that should have gone in with the previous checkin. (CVS 6935) (check-in: 64c7afc7 user: danielk1977 tags: trunk)
11:40
Add a complex assert() that checks a pager invariant. (CVS 6934) (check-in: 2e08ad7b user: danielk1977 tags: trunk)
04:12
Add assert() statements to more tightly constrain the state of pager.c. Remove the three pager*.test scripts since they violate the constraints asserted above by modifying the state of the system in ways that it cannot be modified in a live system. (CVS 6933) (check-in: 3b6d370e user: drh tags: trunk)
00:13
Remove two more overzealous assert() statements. (CVS 6932) (check-in: 788aa9dd user: drh tags: trunk)
00:10
Remove an overzealous assert() from pager.c. (CVS 6931) (check-in: 4a924b47 user: drh tags: trunk)
2009-07-24
21:23
Fix an issue with the previous check-in, (6929). (CVS 6930) (check-in: e5165c80 user: drh tags: trunk)
19:01
Further simplifications to pager.c in support of structural coverage testing. (CVS 6929) (check-in: 866216c0 user: drh tags: trunk)
17:58
Allow virtual tables to be used in shared-cache mode. (CVS 6928) (check-in: 5d9e767a user: danielk1977 tags: trunk)
16:32
Simplifications to pager.c in support of structural coverage testing. (CVS 6927) (check-in: 7222ad26 user: drh tags: trunk)
12:35
Simplifications and comment improvements in pager.c. (CVS 6926) (check-in: 2d2f42ca user: drh tags: trunk)
2009-07-23
01:44
Simplifications and comment enhancements on btree.c. (CVS 6925) (check-in: 5ba880dd user: drh tags: trunk)
2009-07-22
18:24
Modify mksqlite3c.tcl so that it inserts SQLITE_API macros into sqlite3.h. Ticket #3983. (CVS 6924) (check-in: 803ec79f user: danielk1977 tags: trunk)
18:07
Simplifications to btree.c in support of coverage testing. (CVS 6923) (check-in: 375fd6f9 user: drh tags: trunk)
16:41
Avoid leaving a suspect page in the page-cache if an error occurs during sqlite3PagerAcquire(). (CVS 6922) (check-in: 2594f01c user: danielk1977 tags: trunk)
14:08
Fix a double-free that can occur after database corruption is detected. (CVS 6921) (check-in: 5260e8b1 user: danielk1977 tags: trunk)
13:19
Add a NEVER() macro around a pager.c conditional that must always be false in the current implementation. (CVS 6920) (check-in: 1e510d7f user: drh tags: trunk)
07:27
Changes to test code (only) to allow veryquick.test to run with OMIT_UTF16 builsd. Ticket #3985. (CVS 6919) (check-in: 7f3fc7f2 user: danielk1977 tags: trunk)
02:02
Remove an ALWAYS() from a condition that can in fact be false under very obscure circumstances. (CVS 6918) (check-in: 38083228 user: drh tags: trunk)
00:35
Further simplifications to btree.c, especially the sqlite3BtreeKey() and sqlite3BtreeData() functions. New assert() statements added to verify that these routines are called correctly. (CVS 6917) (check-in: 96cfd079 user: drh tags: trunk)
2009-07-21
19:25
Change getAndInitPage() (btree.c) to use only PagerAcquire(), not PagerLookup() and PagerAcquire(). (CVS 6916) (check-in: 0b41dfc0 user: danielk1977 tags: trunk)
19:02
Additional simplifications to btree.c in support of coverage testing. (CVS 6915) (check-in: 716fccea user: drh tags: trunk)
15:33
Remove an assert() in btree.c which is no longer true due to changes in the error reporting behavior of ptrmapPut(). (CVS 6914) (check-in: 110998f1 user: drh tags: trunk)
11:52
Changes to btree.c in support of coverage testing. (CVS 6913) (check-in: 4cf23e9e user: drh tags: trunk)
2009-07-20
19:30
Reverse the order of two conditionals in a test in order to achieve coverage of them both. Also: clarifications to comments in btree.c. (CVS 6912) (check-in: a159e9d2 user: drh tags: trunk)
17:11
Modify various routines inside btree.c to take a pointer to the return-code as a parameter and to no-op if the return-code storage location already contains a non-zero code. (CVS 6911) (check-in: 7dcf2a78 user: drh tags: trunk)
12:33
Use an ALWAYS() on a conditional in btmutex.c that is always true. (CVS 6910) (check-in: 609022ca user: drh tags: trunk)
12:25
Corrections to the comment that is inserted at the top of the amalgamation. Ticket #3981. (CVS 6909) (check-in: 7572991b user: drh tags: trunk)
11:32
Always provide a name for the TEMP database even if SQLite is compiled using SQLITE_OMIT_TEMPDB. (CVS 6908) (check-in: 0ba17c04 user: drh tags: trunk)
2009-07-18
20:01
Code tweaks in support of full-coverage testing. (CVS 6907) (check-in: 22c6dbfd user: drh tags: trunk)
14:36
Add some code to sqlite3VdbeMemSetZeroBlob() so that it works (less efficiently) even when OMIT_INCRBLOB is defined. Ticket #3977. (CVS 6906) (check-in: f5f7259d user: danielk1977 tags: trunk)
11:52
When the asynchronous IO backend opens a file with the EXCLUSIVE flag set, make sure only a single file-descriptor is opened (not one for reading and one for writing). This change fixes #3978. (CVS 6905) (check-in: 630e669b user: danielk1977 tags: trunk)
08:30
Changes to test scripts so that (make test) works when OMIT_INCRBLOB is defined. (CVS 6904) (check-in: 1dd834a3 user: danielk1977 tags: trunk)
2009-07-17
17:25
Fix a subtle problem that can occur when a transaction is automatically rolled back, and afterwards a VM that had opened a statement transaction within the abandoned transaction is finalized. Fixes an assert() that was failing in rtree3.test. (CVS 6903) (check-in: 910df46e user: danielk1977 tags: trunk)
16:54
Return a meaningful error message if a keyword is used as an rtree table column name. Ticket #3970. (CVS 6902) (check-in: 046efe46 user: danielk1977 tags: trunk)
14:37
Skip all tests in tableapi.test if SQLITE_OMIT_GET_TABLE defined. Ticket #3975. (CVS 6901) (check-in: 0219a543 user: shane tags: trunk)
11:44
Code simplifications in support of structural testing. (CVS 6900) (check-in: fb1b955d user: drh tags: trunk)
2009-07-16
18:21
Code simplifications and comment improvements in support of structural coverage testing. (CVS 6899) (check-in: 94525179 user: drh tags: trunk)
12:41
Remove an unused variable from sqlite3ExprListDup(). Ticket #3973. (CVS 6898) (check-in: 17c05aef user: drh tags: trunk)
2009-07-15
18:15
Fix a potential database corruption following DROP TABLE when the pending byte page corresponds to a ptrmap page. This situation cannot happen in a real deployment - but it still needs to be fixed. (CVS 6897) (check-in: 6242db39 user: drh tags: trunk)
17:25
Simplifications to btree.c in support of structural testing. Renamed the "skip" field of the BtCursor object to "skipNext" to make it easier to search for places where it is used. (CVS 6896) (check-in: d3897235 user: drh tags: trunk)
16:30
Remove an assert() from vdbeaux.c that might not be true if the database file is corrupt. (CVS 6895) (check-in: a42dc51e user: drh tags: trunk)
11:26
Added the SQLITE_TESTCTRL_RESERVE option to sqlite3_test_control(). Simplifications to btree.c to facilitate structural coverage testing. (CVS 6894) (check-in: cfbeda1b user: drh tags: trunk)
2009-07-14
18:35
Add comments and assert() statements to show that the return value from sqlite3BtreeKeySize() and sqlite3BtreeData() usually do not matter. Ticket #3968. Also remove a NEVER() macro that can sometimes be true - discovered while testing the previous change. (CVS 6893) (check-in: 0c710c1b user: drh tags: trunk)
17:48
Simplifications to the PRAGMA integrity_check logic. Remove unreachable code. (CVS 6892) (check-in: 17749fa5 user: drh tags: trunk)
14:15
Simplifications and tweaks to vdbeaux.c resulting from structural testing. (CVS 6891) (check-in: fa49666f user: drh tags: trunk)
02:33
Make sure the IN operator works with zeroblobs. Ticket #3965. Other simplifications associated with structural testing. (CVS 6890) (check-in: 25dd3422 user: drh tags: trunk)
2009-07-13
15:52
Remove the SQLITE_CommitBusy flag. This was an attempt to block recursion on the sqlite3_commit_hook() interface. But such recursion is explicitly disallowed, so the flag is pointless. (CVS 6889) (check-in: 1c2bfc43 user: drh tags: trunk)
13:18
Change an unreachable condition in btree.c to a NEVER(). (CVS 6888) (check-in: 9f800e11 user: danielk1977 tags: trunk)
11:22
In sqlite3PagerWrite(), do not set the PGHDR_NEED_SYNC flag on a page if an IO error occured while attempting to journal it. (CVS 6887) (check-in: b9be365d user: danielk1977 tags: trunk)
09:41
Remove an assert ("assert( subpage>0 )") from btree.c that may not be true for a corrupt database. Also add comments and other assert() statements to btree.c function moveToRoot(). (CVS 6886) (check-in: 3151dab9 user: danielk1977 tags: trunk)
07:30
Remove a case from BtreeMovetoUnpacked() that is unreachable as of (6881). (CVS 6885) (check-in: 39ce2097 user: danielk1977 tags: trunk)
2009-07-12
02:32
Simplifications to btree.c to help facilitate coverage testing. (CVS 6884) (check-in: dfb146ef user: drh tags: trunk)
02:31
When an OOM fault occurs while moving a page for autovacuum in an in-memory database, be sure to undo the page move prior to returning the error, to avoid corrupting the in-memory database file. (CVS 6883) (check-in: d0964b93 user: drh tags: trunk)
2009-07-11
18:26
Remove an unused parameter from the accessPayload() function in btree.c. (CVS 6882) (check-in: 7deb6568 user: drh tags: trunk)
17:39
Fix a case where deleting a row from a corrupt database could cause an assert to fail. (CVS 6881) (check-in: 6994b41a user: danielk1977 tags: trunk)
17:04
Bug fix in the computation of the number of pages to autovacuum when nReserve is greater than zero. (CVS 6880) (check-in: 618a83d6 user: drh tags: trunk)
13:13
Unwind some complex conditions in sqlite3BtreeDelete() into separate "if" statements. (CVS 6879) (check-in: d99bde9c user: drh tags: trunk)
11:45
Remove another unreachable branch from btree.c. (CVS 6878) (check-in: b0853100 user: danielk1977 tags: trunk)
06:55
Modify the integrity-check code so that each b-tree page inspected is reinitialized while doing so, even if an initialized copy exists in the cache. This prevents an assert from failing when running integrity_check on a corrupt database. (CVS 6877) (check-in: 709576c6 user: danielk1977 tags: trunk)
05:06
Remove unreachable condition from btree.c. (CVS 6876) (check-in: 47b40fef user: danielk1977 tags: trunk)
2009-07-10
16:51
Fix a pager reference count leak in btree that occurs on an OOM following a database page size change. (CVS 6875) (check-in: c6dfc8bd user: drh tags: trunk)
09:24
Fix a double-free that can occur when using the fts3 legacy syntax '-' operator. Add tests for the same operator. Ticket #3960. (CVS 6874) (check-in: c19d419e user: danielk1977 tags: trunk)
02:52
Simplifications to the PRAGMA integrity_check logic in btree.c. (CVS 6873) (check-in: 440c573c user: drh tags: trunk)
2009-07-09
13:25
Fix two faulty assert() statements btree. (It was possible for the assertions to be false given a corrupt database file as input.) (CVS 6872) (check-in: 9403f04d user: drh tags: trunk)
11:36
Remove an unused branch from btree.c. (CVS 6871) (check-in: 45efb78a user: danielk1977 tags: trunk)
08:27
In btree.c, have setSharedCacheLock() assume that the b-tree is sharable instead of checking to see if it is. The caller has already performed this check. (CVS 6870) (check-in: 3190eefd user: danielk1977 tags: trunk)
05:07
Restore (btree_set_cache_size) to test3.c. This is used on unix for the tcl "crash tests". Make some functions no longer used outside of btree.c static. (CVS 6869) (check-in: 1d96ce8c user: danielk1977 tags: trunk)
03:20
removed the test function sqlite3BtreeFlags() (test code only); (CVS 6868) (check-in: 579ba6c8 user: shane tags: trunk)
02:48
removed unused functions from test3.c (test code only); (CVS 6867) (check-in: 0eb69e8d user: shane tags: trunk)
02:24
Simplifications and additional testcase() macros for btree.c. (CVS 6866) (check-in: 1b8c3a82 user: drh tags: trunk)
2009-07-08
18:50
Fix a typo in (6861): "ifndef SQLITE_TEST" -> "ifdef SQLITE_TEST". (CVS 6865) (check-in: 890dbab2 user: danielk1977 tags: trunk)
18:45
Revert part of (6860) that was accidentally checked in. (CVS 6864) (check-in: 11e295cc user: danielk1977 tags: trunk)
18:12
Add another boundary-condition testcase() macro to btree.c. Correct the comment on modifyPagePointer(). (CVS 6863) (check-in: fed66e86 user: drh tags: trunk)
16:54
Improvements to comments in btree.c:freeSpace(). Added a testcase() macro to verify a boundary case is tested in sqlite3BtreeInitPage(). (CVS 6862) (check-in: 5ac991b3 user: drh tags: trunk)
15:14
Comment out sqlite3BtreeFlags() when not in debug mode. Tweaks to database corruption detection logic in freeSpace(). (CVS 6861) (check-in: 196cbf82 user: drh tags: trunk)
13:55
Fix error handling in sqlite3BtreePutData(). (CVS 6860) (check-in: 86eba4f1 user: danielk1977 tags: trunk)
08:05
Remove an ALWAYS clause that could be false if an IO error within a statement executed by a virtual table caused an emergency rollback. (CVS 6859) (check-in: 0cc705c2 user: danielk1977 tags: trunk)
01:49
Simplifications to sqlite3BtreeInsert() and allocateSpace(). Added many testcase() macros to verify boundary conditions in btree.c. (CVS 6858) (check-in: aab82a22 user: drh tags: trunk)
2009-07-07
17:38
Improvements to corrupt database detection in defragmentPage(). (CVS 6857) (check-in: 87bbc8d6 user: drh tags: trunk)
15:47
Do not load the root-page of a b-tree table/index when opening a cursor. Instead, allow it to be loaded when the cursor is first used (in function moveToRoot()). Also move the root-page flags sanity checks that were a part of the OP_OpenRead/OpenWrite opcodes into the moveToRoot() function. (CVS 6856) (check-in: 06dcfe72 user: danielk1977 tags: trunk)
13:56
If an error occurs in PagerBegin(), call pager_end_transaction() to reset the internal state of the pager object. (CVS 6855) (check-in: ea7ed166 user: danielk1977 tags: trunk)
11:39
Fix a reference count problem following database corruption detection in the ptrmapPut() routine of btree.c. (CVS 6854) (check-in: ec1e27e3 user: drh tags: trunk)
02:44
Simplifications to btree.c and vdbeaux.c in support of structural coverage testing. (CVS 6853) (check-in: fc2a40a9 user: drh tags: trunk)
2009-07-06
21:54
Fix the pager so that it remembers the name of the journal for an in-memory database as an empty string. This is important when committing a multi-database transaction that includes one or more attached memory databases. (CVS 6852) (check-in: 31a5e819 user: drh tags: trunk)
19:03
Fix the backup logic so that it detects a failure to sqlite3BtreeUpdateMeta() and reports that failure back up to the top level. (CVS 6851) (check-in: 471b92f2 user: drh tags: trunk)
18:56
Make the sqlite3BtreeMoveto function static, since it is only used from within btree.c. Remove unused function lockBtreeWithRetry from btree.c. (CVS 6850) (check-in: 30d5ec62 user: danielk1977 tags: trunk)
00:44
Simplifications and comment cleanup in vdbeaux.c. (CVS 6849) (check-in: 1636e783 user: drh tags: trunk)
2009-07-04
17:16
Remove unreachable code from function btreeCursor() in btree.c. (CVS 6848) (check-in: c76a366e user: danielk1977 tags: trunk)
15:41
Remove a redundant branch from btree.c. (CVS 6847) (check-in: 133357d2 user: danielk1977 tags: trunk)
2009-07-03
22:54
Remove two unused fields from the Parse structure. The TCL interface now removes leading whitespace from SQL statements before parsing them. (CVS 6846) (check-in: 983cb692 user: drh tags: trunk)
19:19
Remove unused code (that was commented out) from prepare.c. Remove an incorrect NEVER() macro. Fix the comment on schemaIsValid() to correctly describe its return behavior. (CVS 6845) (check-in: 90deb658 user: drh tags: trunk)
19:18
Cause sqlite3_exec() to return SQLITE_NOMEM if it cannot allocate memory to hold the error message for some other error. (CVS 6844) (check-in: e9849292 user: drh tags: trunk)
17:23
Remove an unused variable from the test code in test3.c. (CVS 6843) (check-in: 9e35bec9 user: drh tags: trunk)
17:09
Add a version of the Lemon parser template "lempar.c" to the src/ subfolder. This new parser template contains a couple of NEVER() macros that disable tests that are needed for general grammars but not for the specific grammar used by SQLite. SQLite builds with the modified lempar.c. (CVS 6842) (check-in: d426cc64 user: drh tags: trunk)
16:25
Simplify the way the read-uncommitted flag is handled to facilitate test coverage. (CVS 6841) (check-in: e2112d61 user: danielk1977 tags: trunk)
15:37
Make explicit the restrictions on UPDATE, DELETE, and INSERT statement syntax within triggers. Ticket #3947. (CVS 6840) (check-in: c8bf40df user: drh tags: trunk)
12:57
Test the result of pthread_create() and do not call pthread_join() if the thread creation failed. Ticket #3933. (CVS 6839) (check-in: 304c5110 user: drh tags: trunk)
2009-07-02
18:40
Fix to sqlite3AuthRead to accommodate "new" or "old" references that are used in a context where a column reference may also be used (i.e. "SELECT new.
17:21
When a b-tree transaction is committed when there are open cursors, downgrade shared-cache write-locks to read-locks instead of relinquishing all locks. Fix for #3942. (CVS 6837) (check-in: 611e704f user: danielk1977 tags: trunk)
07:47
Cause opening a transaction on a sharable b-tree module automatically obtain a read-lock on page 1. This means there is no way for sqlite3BtreeGetMeta() to fail. (CVS 6836) (check-in: e3c055f1 user: danielk1977 tags: trunk)
05:23
Fix for compilation with OMIT_AUTOVACUUM defined. Ticket #3940. (CVS 6835) (check-in: 8f0591ae user: danielk1977 tags: trunk)
2009-07-01
18:09
Change to test code and scripts allowing memsys3 to be tested using a build that has both memsys3 and memsys5 enabled. (CVS 6834) (check-in: a00aeec2 user: danielk1977 tags: trunk)
18:04
Fix a 1-byte buffer overwrite that can occur when a virtual table overloads an SQL function. (CVS 6833) (check-in: bfe336a8 user: danielk1977 tags: trunk)
16:12
Report an error if a USING or ON clause is specified following a from-list element that is not to the right of a join operator. Fix for #3846. (CVS 6832) (check-in: 29b48972 user: danielk1977 tags: trunk)
14:56
Do not ignore alias "a" in a query of the form "SELECT ... FROM (...) AS a" Fix for #3935. Also expand upon (6751) to fix some similar obscure memory leaks. (CVS 6831) (check-in: 42f9d1e5 user: danielk1977 tags: trunk)
2009-06-29
06:00
Cause incremental-blob read/write operations lock shared-cache tables in the same way as normal SQL read/writes. Add complex assert statements to make sure tehe correct shared-cache locks are held when accessing the database. Eliminate some redundant checks from btree.c. (CVS 6830) (check-in: f17ef378 user: danielk1977 tags: trunk)
2009-06-27
14:10
Version 3.6.16 (CVS 6829) (check-in: ff691a6b user: drh tags: trunk, release)
11:17
Fix an instance where sqlite3JumpHere() might be called with a negative address following an OOM fault. (CVS 6828) (check-in: 49f22e55 user: drh tags: trunk)
00:48
Fix a bug in sqlite3_realloc() - if called with a size of more than 2147483392 it returns 0 but it also releases the prior allocation. (CVS 6827) (check-in: 653df0af user: drh tags: trunk)
2009-06-26
18:35
Remove incorrect NEVER() macros from malloc.c. The allocations can be exceeded using sqlite3_malloc() and sqlite3_realloc(). (CVS 6826) (check-in: 0d345e59 user: drh tags: trunk)
16:32
Removed a few compiler warnings under MSVC. (CVS 6825) (check-in: f01a9fc3 user: shane tags: trunk)
15:14
Remove the priorNewRowid field from the sqlite3 structure. Use the last_insert_rowid as the initial value when searching for a new random rowid in the OP_NewRowid opcode. (CVS 6824) (check-in: 96729b2d user: drh tags: trunk)
14:17
Skip a couple tests requiring working 64bit int support on platforms without that support. Test code change only. (CVS 6823) (check-in: d8c8145c user: shane tags: trunk)
14:04
When sqlite3VdbeAddOp() fails due to an OOM fault, return an address of 1 rather than zero so that there appears to always be a prior instruction. This prevents a negative jump-to address computation in where.c following an OOM fault. (CVS 6822) (check-in: fe02339c user: drh tags: trunk)
12:30
Fix a test script problem in exclusive.test. (CVS 6821) (check-in: a52ef5a4 user: danielk1977 tags: trunk)
12:15
Fix the new pager.c changes so that they compile with IOTRACE defined. Fix an out-of-order variable definition in vdbeaux.c. (CVS 6820) (check-in: ac145028 user: drh tags: trunk)
10:39
Another change to test_journal.c to account for (6817). Again, only test code has changed. (CVS 6819) (check-in: 58884b6c user: danielk1977 tags: trunk)
09:01
Update test_journal.c to account for (6817). Changes to test code only. (CVS 6818) (check-in: 542ee8cc user: danielk1977 tags: trunk)
07:12
Avoid writing the 8-byte journal-header magic until the journal-header is synced. In persistent journal-mode, this prevents any old content that follows an unsynced journal-header from being interpreted as part of the rollback journal. (CVS 6817) (check-in: a5ecffcf user: danielk1977 tags: trunk)
2009-06-25
16:11
Fix a problem with a return code being ignored in insertCell(). (CVS 6816) (check-in: bb5f1c01 user: danielk1977 tags: trunk)
11:50
Get the notify2.test running again by removing an ALWAYS() that was mistakenly inserted and by taking care not to report corruption following an SQLITE_LOCKED failure during schema parsing. (CVS 6815) (check-in: 6e9140a7 user: drh tags: trunk)
09:40
Replace an "if" condition that is always true in btree.c with an assert(). (CVS 6814) (check-in: daadbd9a user: danielk1977 tags: trunk)
01:47
Improved handling of oversize string and blob errors. Other simplifications in support of full coverage testing. (CVS 6813) (check-in: 8b340766 user: drh tags: trunk)
2009-06-24
13:16
Remove an ALWAYS() macro from vdbe.c that sometimes fails on thread tests. (CVS 6812) (check-in: 52eac078 user: drh tags: trunk)
13:13
Disable the new malloc-37 test when locking_mode==exclusive. The test basically works, but sometimes reports "database is locked" instead of "out of memory" and that messes up the error reporting. (CVS 6811) (check-in: 3b8f9dec user: drh tags: trunk)
11:08
Remove a declaration of the sqlite3Assert() function that was deleted by the previous check-in. (CVS 6810) (check-in: ee20b6a2 user: drh tags: trunk)
10:26
Remove the sqlite3Assert() function. The ALWAYS() and NEVER() macros call assert() directly when compiled with SQLITE_DEBUG. (CVS 6809) (check-in: d8fc373f user: drh tags: trunk)
05:40
Simplify things by rolling the functionality of balance_shallower() into balance_nonroot(). (CVS 6808) (check-in: 11750c6a user: danielk1977 tags: trunk)
2009-06-23
20:28
Enhance autoincrement so that it works with triggers that also do autoincrement inserts, even multiple inserts into the same table. Ticket #3928 (CVS 6807) (check-in: 1330993d user: drh tags: trunk)
16:40
Remove a condition from balance_nonroot() that is always true. (CVS 6806) (check-in: c5dc80e6 user: danielk1977 tags: trunk)
15:43
Call balance_shallower() from balance_nonroot() instead of from balance(). This simplifies coverage testing a bit. (CVS 6805) (check-in: da9893e2 user: danielk1977 tags: trunk)
14:39
Update the configure script for version 3.6.16 (CVS 6804) (check-in: b614e554 user: drh tags: trunk)
14:18
Update the version number in preparation for the next release. (CVS 6803) (check-in: 207c4a02 user: drh tags: trunk)
14:15
Simplifications to vdbe.c to promote better test coverage. (CVS 6802) (check-in: 3ffc93d7 user: drh tags: trunk)
11:53
Add a test to verify that #3929 is fixed. (CVS 6801) (check-in: 16c1ae9b user: danielk1977 tags: trunk)
11:22
Fix a failing assert in btree.c. The same bug was causing a spurious SQLITE_CORRUPT return when compiled without SQLITE_DEBUG. (CVS 6800) (check-in: 47ec8749 user: danielk1977 tags: trunk)
2009-06-22
19:05
Simplifications to vdbe.c and it service routines in support of coverage testing. (CVS 6799) (check-in: 308f2e61 user: drh tags: trunk)
18:03
Remove a condition that is always true from btree.c. (CVS 6798) (check-in: 3ec8b37a user: danielk1977 tags: trunk)
12:05
Make sure sqlite3BtreeCreateTable() returns an error code if the largest rootpage field is invalid in auto_vacuum mode. Update file-format comments to describe all of the "meta" values. (CVS 6797) (check-in: bda38f5e user: drh tags: trunk)
11:10
More simplifications to vdbe.c. Remove a NEVER() from vdbe.c that is possible after all. (CVS 6796) (check-in: c8f009bd user: drh tags: trunk)
05:43
If an OOM error occurs just after obtaining a shared lock on the database file, release the lock before returning. (CVS 6795) (check-in: 971a9650 user: danielk1977 tags: trunk)
00:55
Simplifications to vdbe.c in support of coverage testing. (CVS 6794) (check-in: 16680f05 user: drh tags: trunk)
2009-06-20
18:52
When recovering from the error-state in pagerSharedLock(), do not search for a hot-journal in the file-system if the pager is configured to use an anonymous temp file as the journal. (CVS 6793) (check-in: 4b46805c user: danielk1977 tags: trunk)
11:54
If after obtaining an exclusive lock to rollback a hot-journal file it is found that the journal file has been deleted, do not return an SQLITE_BUSY error. Just downgrade the lock and continue with the current operation. This eliminates a spurious SQLITE_BUSY error caused by a race condition. (CVS 6792) (check-in: 9a066600 user: danielk1977 tags: trunk)
2009-06-19
22:50
Improved documentation on the VFS methods. Ticket #3925. (CVS 6791) (check-in: f66fc771 user: drh tags: trunk)
22:23
Do now allow a COMMIT to occur while even a single write operating is in progress. (CVS 6790) (check-in: 605520ec user: drh tags: trunk)
18:32
Fix the comment on the sqlite3PExpr() subroutine. Ticket #3924. (CVS 6789) (check-in: 4bb96db6 user: drh tags: trunk)
17:50
If a call is made to sqlite3PagerAcquire when there are no outstanding references to any pages and the pager is in the error-state, try to exit the error-state at this point. Previously this was only attempted if the pager was configured to use exclusive mode. (CVS 6788) (check-in: 62db08bc user: danielk1977 tags: trunk)
16:44
Make sure group_concat() ignores initial NULL values. (CVS 6787) (check-in: 90c3b23c user: drh tags: trunk)
14:06
Reorganize and cleanup the prepared statement object. Remove code that has been commented out for ages and is no longer relevant to anything. (CVS 6786) (check-in: 37ae5f5e user: drh tags: trunk)
02:25
Fix a possible segfault when backing up an encrypted database. (CVS 6785) (check-in: 7d8f178c user: drh tags: trunk)
00:33
Make sure the sqlite3VdbeGetOp() subroutine works even when SQLite is compiled with SQLITE_OMIT_TRACE. (CVS 6784) (check-in: 1c8ec2a6 user: drh tags: trunk)
2009-06-18
20:52
Changes to the backup functionality so that it works better with codecs. (CVS 6783) (check-in: 87d6796d user: drh tags: trunk)
17:22
Move codec management from database connections into the pager so that it will work together with shared cache. (CVS 6782) (check-in: ed08b53c user: drh tags: trunk)
11:34
Update the filefmt.test test script to conform to the previous check-in. (CVS 6781) (check-in: 40a40e81 user: drh tags: trunk)
11:29
Reduce the minimum usable page space to 480 byte from 500 bytes. (CVS 6780) (check-in: db4fb835 user: drh tags: trunk)
00:41
Remove the P3 operand from OP_IsNull since it was not being used. (CVS 6779) (check-in: 767ef1e4 user: drh tags: trunk)
2009-06-17
22:50
Avoid an assertion fault if an out-of-memory error occurs while trying to run the string-concatentation operator on a zero-blob. (This is an absurd thing to do, but even so, we still should not fault.) (CVS 6778) (check-in: 0def0b76 user: drh tags: trunk)
21:42
Fix a problem in vdbe.c that could cause a double-free of memory if the SQLITE_LIMIT_LENGTH is changed after a statement is prepared but before it is run. Also remove debugging statements from tkt3841.test. (CVS 6777) (check-in: 3d7327fd user: drh tags: trunk)
16:20
Use caution to avoid integer overflow when doing real to integer affinity operations. Ticket #3922. (CVS 6776) (check-in: 39255946 user: drh tags: trunk)
13:57
Fix a potential segfault following database corruption. Problem made visible by check-in (6772). (CVS 6775) (check-in: 69eb0ff8 user: drh tags: trunk)
13:09
Suppress some -Wextra compiler warnings from GCC. (CVS 6774) (check-in: 59ec937c user: drh tags: trunk)
11:49
Fix a bug affecting secure-delete mode introduced by (6768). (CVS 6773) (check-in: a433ca82 user: danielk1977 tags: trunk)
11:13
Fix for #3918. Also, fix the TRACE macros in balance_nonroot(). (CVS 6772) (check-in: 368e44ec user: danielk1977 tags: trunk)
01:17
A minor simplification to the tokenizer. (CVS 6771) (check-in: 18f2076a user: drh tags: trunk)
00:35
Changes to prepare.c and callback.c to promote better test coverage. (CVS 6770) (check-in: 08cca219 user: drh tags: trunk)
2009-06-16
17:49
Changes sqlite3_prepare_v2() (and related routines) so that if it fails due to a missing table and the schema is out of date, it retries once before returning SQLITE_SCHEMA. Other changes to prepare.c to facilitate coverage testing. (CVS 6769) (check-in: 256ec3c6 user: drh tags: trunk)
16:50
Changes to balance_nonroot() and BtreeDelete() to simplify delete operations and reduce stack/heap usage while balancing b-tree structures. (CVS 6768) (check-in: 092b276e user: danielk1977 tags: trunk)
14:15
Fix a link error and warning that can occur in where.c when compiling under MSVC with SQLITE_OMIT_VIRTUALTABLE defined. Ticket #3914. (CVS 6767) (check-in: 793c93be user: shane tags: trunk)
04:35
Leave out a redundant line in build.c. Ticket #3916. (CVS 6766) (check-in: d9f997ae user: danielk1977 tags: trunk)
04:31
Remove a duplicate assert from btree.c. Ticket #3915. (CVS 6765) (check-in: d89542cd user: danielk1977 tags: trunk)
2009-06-15
23:15
Additional updates to the symbol resolver and expression tree walker to facilitate test coverage. (CVS 6764) (check-in: a49c2d4b user: drh tags: trunk)
20:45
Changes to allow a clean compile with no floating-point instructions generated when SQLITE_OMIT_FLOATING_POINT is used. (CVS 6763) (check-in: 1591b832 user: drh tags: trunk)
18:32
Updates to resolve.c to facilitate full coverage testing. (CVS 6762) (check-in: c50f0f28 user: drh tags: trunk)
16:27
Fix compiler warnings with MSVC build. (CVS 6761) (check-in: e1e64307 user: shane tags: trunk)
03:28
Version 3.6.15 (CVS 6760) (check-in: aff34826 user: drh tags: trunk, release, version-3.6.15)
00:04
Update the configuration script for version 3.6.15. (CVS 6759) (check-in: 14df65dc user: drh tags: trunk)
2009-06-14
12:47
Detect database corruption and abort balance_nonroot() before the corruption causes problems. (CVS 6758) (check-in: 3448b39d user: drh tags: trunk)
2009-06-12
17:46
Change lemon so that it does not generate yytestcase() macros on destructor cases since destructors are commonly unreachable in a reasonable grammar. For the reduce-rule switch, gather all no-ops into the "default:" case. (CVS 6757) (check-in: caebfe82 user: drh tags: trunk)
15:47
The previous check-in ((6755)) put in more yytestcase() macros than are called for. This check-in addresses that problem. (CVS 6756) (check-in: a5b182f9 user: drh tags: trunk)
13:53
The lemon parser generator now inserts yytestcase() macros on reduce action and on each destructor, to verify that all have been executed. yytestcase() is a no-op by default but can be set to something more useful inside of %include. (CVS 6755) (check-in: fe9c9177 user: drh tags: trunk)
12:50
In lemon: omit unused entries from the end of the yyFallback array. (CVS 6754) (check-in: 9cfbe2ba user: drh tags: trunk)
12:04
Enable the SQLITE_LIMIT_FUNCTION_ARG limiter. (CVS 6753) (check-in: a17e3317 user: drh tags: trunk)
11:42
Remove a C++-ism from the code. Ticket #3912. (CVS 6752) (check-in: bc729bc3 user: drh tags: trunk)
03:47
An additional memory leak in the parser fixed. Ticket #3911. (CVS 6751) (check-in: 6197b492 user: drh tags: trunk)
03:27
Make sure nested queries with USING clauses do not leak memory. Preliminary fix for ticket #3911. (CVS 6750) (check-in: bd341a10 user: drh tags: trunk)
02:27
Modifications to the parser to eliminate unreachable code. (CVS 6749) (check-in: 457e0b24 user: drh tags: trunk)
2009-06-11
17:32
Honor the SQLITE_OPEN_READONLY flag even on a :memory: or temporary database, even though such a database is pointless. Ticket #3908. (CVS 6748) (check-in: 73ba841a user: drh tags: trunk)
17:04
Add an ALWAYS() to a conditional in where.c. (CVS 6747) (check-in: 1fdb3e1e user: drh tags: trunk)
00:47
Changes to reenable codec operation and to handle memory allocation failures within a codec. (CVS 6746) (check-in: 43a6ca98 user: drh tags: trunk)
2009-06-10
19:33
Do not let the reverse_unordered_selects pragma force the use of an index that would not otherwise be used. Ticket #3904. Also: remove an test which is always true. (CVS 6745) (check-in: 78a391dc user: drh tags: trunk)
11:07
Remove a NEVER() that can sometimes occur on an OOM error. (CVS 6744) (check-in: c27f23bb user: drh tags: trunk)
09:11
Minor tweak to balance_quick() to save a few instructions. (CVS 6743) (check-in: 9ace9959 user: danielk1977 tags: trunk)
2009-06-09
19:53
Remove the actual checks that verify that memory pools (such as set up using SQLITE_CONFIG_HEAP) are 8-byte aligned. But document that 8-byte alignment is required. (CVS 6742) (check-in: e9b55ccc user: drh tags: trunk)
18:58
Fix compiler warnings with MSVC build. (CVS 6741) (check-in: 0bd84e73 user: shane tags: trunk)
18:14
Avoid a false failure report in the test scripts caused by the vdbe stack "compression" script. (CVS 6740) (check-in: 9d332989 user: shane tags: trunk)
18:02
Require that the buffer specified by SQLITE_CONFIG_HEAP be 8-byte aligned. (CVS 6739) (check-in: 18b78068 user: drh tags: trunk)
18:01
Changes to tokenize.c to facilitate full coverage testing. (CVS 6738) (check-in: 5e8c48cf user: drh tags: trunk)
15:25
Change savepoint4.test to limit database growth. Otherwise the test can take a very long time to run, depending on the prng. (CVS 6737) (check-in: ed1d4f47 user: danielk1977 tags: trunk)
14:27
Modify mkkeywordhash.c so that it puts the original text of each token in a comment beside the "testcase()" macros. (CVS 6736) (check-in: a7d0817c user: drh tags: trunk)
13:42
Enable cell overflow checking in sqlite3BtreeInitPage() using the compile-time option SQLITE_ENABLE_OVERSIZE_CELL_CHECK. Change the tests so that they recognize different error messages depending on the setting of this macro. (CVS 6735) (check-in: 56bff6eb user: drh tags: trunk)
11:34
Avoid calling fillInCell() to create an internal node intkey cell from balance_nonroot(). A single putVarint() does the same thing more quickly. (CVS 6734) (check-in: 2e5d42ae user: danielk1977 tags: trunk)
10:37
Only do the cell overread checks in sqlite3BtreeInitPage if SQLITE_OVERREAD_CHECK is defined at compile-time. (CVS 6733) (check-in: 49f544eb user: drh tags: trunk)
09:41
Do not clear the MemPage.nFree variable when insertCell() adds an overflow cell to a page. Not doing this means balance_quick() can avoid a call to sqlite3BtreeInitPage(). (CVS 6732) (check-in: 8f1c1f61 user: danielk1977 tags: trunk)
2009-06-08
19:44
Additional comments to clarify the operation of the LIKE optimizer in where.c. (CVS 6731) (check-in: cc9c1217 user: drh tags: trunk)
17:11
Clarification of the operation of the OR-term optimizer in where.c. (CVS 6730) (check-in: 6b42dc3d user: drh tags: trunk)
14:49
Change the btree balance code so that it does not call balance_nonroot() recursively. (CVS 6729) (check-in: 7863db90 user: danielk1977 tags: trunk)
12:52
Increase the version number to 3.6.15 in preparation for the next release. (CVS 6728) (check-in: 456ea541 user: drh tags: trunk)
2009-06-07
23:45
Disable the LIKE optimization if the affinity of the LHS column is not TEXT. Ticket #3901. (CVS 6727) (check-in: a255c645 user: drh tags: trunk)
2009-06-06
19:21
Update the error message on one of the corruption tests to account for the fact that we are finding the corruption sooner. (CVS 6726) (check-in: ba9848e7 user: drh tags: trunk)
16:08
Fix an error in the malloc.test test script causing a small buffer overread. (CVS 6725) (check-in: 4d129bee user: danielk1977 tags: trunk)
15:17
Make sure the result of sqlite3VdbeGetOp() is not used as an array following an OOM error, since after (6691) it might be a single-entry dummy opcode. (CVS 6724) (check-in: 127b1398 user: drh tags: trunk)
14:13
When building in debug mode with gcc, force the nullMem variable in function columnMem() to be aligned to an 8-byte boundary. Otherwise an assert() statement may fail. (CVS 6723) (check-in: 3fd6c72d user: danielk1977 tags: trunk)
2009-06-05
18:44
Detect when database corruption causes an attemp to set the pointer map value for a pointer map page and report the corruption. (CVS 6722) (check-in: 3ae4880b user: drh tags: trunk)
17:09
Remove leftover "breakpoint" commands from test scripts. Also remove blank lines at the end of scripts. (CVS 6721) (check-in: 1fef16ec user: drh tags: trunk)
16:46
Do not cast an unsigned int into an int for comparison. (CVS 6720) (check-in: 302ab855 user: drh tags: trunk)
14:17
Take care that a corrupt variable-length integer does not cause 32-bit integer overflow when parsing a record format, nor cause excessively large memory allocations. (CVS 6719) (check-in: 38b20327 user: drh tags: trunk)
2009-06-04
19:06
Earlier detection of freelist corruption in the page allocation routines. (CVS 6718) (check-in: e557c8e5 user: drh tags: trunk)
17:02
Fix an assertion fault in balance_quick() that occurs when an interior btree node has zero cells due to database corruption. Also update the corrupt7.test result vectors for a couple of cases where the error report on database corruption changed due to earlier detection. (CVS 6717) (check-in: 1335e444 user: drh tags: trunk)
16:14
If the root page of a btree is empty and is also not a leaf page and the page is not page 1, then report database corruption. (CVS 6716) (check-in: 52b02ca5 user: drh tags: trunk)
14:46
Reduce the stack usage of balance_quick(). (CVS 6715) (check-in: e7ad68e9 user: danielk1977 tags: trunk)
02:47
Minor updates to comments in test scripts. (CVS 6714) (check-in: 453ff88f user: shane tags: trunk)
02:46
Minor tweak to test script to ensure every byte in file touched at least once. (CVS 6713) (check-in: bc6c2d89 user: shane tags: trunk)
00:11
Fix two instances where a malformed header in a database file (in other words a corrupt database file) can lead to an assertion fault. (CVS 6712) (check-in: 4e92c7f2 user: drh tags: trunk)
2009-06-03
21:04
Change the pcache1.c implementation so that the "header" occurs at the end of page buffer, not at the beginning. This insures that the 20 bytes immediately following the page buffer are mapped if a read of the page buffer overruns due to a malformed cell. (CVS 6711) (check-in: c54de1f5 user: drh tags: trunk)
17:26
Add corruptD.test, a container for testing the "cell overflow" problem. Also shuffle a small amount of code in BtreeInitPage() to check that the page header pointer to the start of the cell offset array is set to a sane value. (CVS 6710) (check-in: 7fa5d3cb user: danielk1977 tags: trunk)
11:25
Define a set of constants to use as the "index" argument to sqlite3BtreeGetMeta and UpdateMeta. This makes some parts of the code easier to follow. (CVS 6709) (check-in: 6dbf4eca user: danielk1977 tags: trunk)
01:24
Additional changes to reduce stack usage. The SQLITE_SMALL_STACK compile-time option is now available. (CVS 6708) (check-in: baea79fd user: drh tags: trunk)
2009-06-02
21:31
Further reductions in the amount of stack space required. (CVS 6707) (check-in: 04bad9eb user: drh tags: trunk)
16:06
Tweaks to vdbe.c to further reduce stack space requirements. (CVS 6706) (check-in: 6f2aab3f user: drh tags: trunk)
15:47
Add a test case for ticket #3893 and ticket #3894. (CVS 6705) (check-in: 2472f6db user: drh tags: trunk)
15:21
Add the vdbe-compress.tcl script which automatically refactors the sqlite3VdbeExec() routine to use less stack space. Use this script when constructing the amalgamation. (CVS 6704) (check-in: 7f433918 user: drh tags: trunk)
2009-06-01
19:53
Avoid allocating large objects on the stack in the incremental BLOB I/O interface. (CVS 6703) (check-in: ea7dfde7 user: drh tags: trunk)
18:18
Malloc for space to hold the Parse object in sqlite3_prepare() and friends. Or, if compiled with SQLITE_USE_ALLOCA, obtain space for the object from alloca(). (CVS 6702) (check-in: c7c0c58e user: drh tags: trunk)
17:10
Added assert to verify winMutex system is inited before "static" mutexes are used. (CVS 6701) (check-in: b126013b user: shane tags: trunk)
17:06
Ensure that "static" mutexes are deleted on shutdown so that they are not leaked across restarts. (CVS 6700) (check-in: 4e75897e user: shane tags: trunk)
16:53
Fix compiler warnings with MSVC build. (CVS 6699) (check-in: 07915885 user: shane tags: trunk)
16:42
Fix a couple of Windows only issues with test scripts. (CVS 6698) (check-in: 0f6bc5e1 user: shane tags: trunk)
2009-05-31
21:21
Code simplifications to facilitate coverage testing following the recent changes to the Expr object. (CVS 6697) (check-in: ee9a144d user: drh tags: trunk)
17:16
Fix the ".genfkey" command of the CLI so that it does not leak memory if sqlite3_realloc() fails. Ticket #3891. (CVS 6696) (check-in: a028d69c user: drh tags: trunk)
2009-05-30
23:35
Fix typo reported by ticket #3888. Other minor edits to facilitate coverage testing. (CVS 6695) (check-in: 164adf26 user: drh tags: trunk)
20:49
Simplifications to the expr.c source module resulting from structural testing. (CVS 6694) (check-in: f760bb7a user: drh tags: trunk)
14:16
Fix for ticket #3887. Other unrelated bits of code cleanup in the expr.c source module. (CVS 6693) (check-in: 00e7250f user: drh tags: trunk)
10:46
In vacuum.c use "PagerIsMemdb(X)" instead of "PagerFile(X)->pMethods==0". (CVS 6692) (check-in: 874295ce user: danielk1977 tags: trunk)
2009-05-29
19:00
Enhance the sqlite3VdbeGetOp() routine so that it always returns a pointer to VdbeOp, even following an OOM fault. This simplifies error handling in callers. Cleanup to the column cache logic and the expr.c source module. (CVS 6691) (check-in: ede06dac user: drh tags: trunk)
14:39
Refinements in expression handling logic that have resulted from recent structural testing. (CVS 6690) (check-in: bd89f2c2 user: drh tags: trunk)
11:57
Still more refinements to the hasHotJournal() fix of ticket #3883. (CVS 6689) (check-in: 726b425e user: drh tags: trunk)
10:55
The hasHotJournal() fix of check-in (6687) causes some minor problems in various alternative operating modes, such as locking_mode=EXCLUSIVE. This additional patch attempts to fix those concerns. Ticket #3883. (CVS 6688) (check-in: a2ba61d9 user: drh tags: trunk)
00:30
Modify the hasHotJournal() routine to return a false-positive if it is unable to open the journal file to check its header due to a race condition. Processing downstream of hasHotJournal() already knows how to deal with false-positives. Ticket #3883. (CVS 6687) (check-in: d6b5d8e1 user: drh tags: trunk)
2009-05-28
21:04
Remove references to deleted function sqlite3ExprRegister(). Changes to the expr.c source module to promote better testing. (CVS 6686) (check-in: 6ae4ad6e user: drh tags: trunk)
14:34
Fix a NULL pointer dereference following an OOM error in the column name resolver. (CVS 6685) (check-in: 3b461425 user: drh tags: trunk)
12:49
Make sure the column name resolver does not try to duplicate Expr.u.zToken when the Expr.u.iValue union member is the element being used. (CVS 6684) (check-in: 376ecf0d user: drh tags: trunk)
11:05
Workaround the need for internal API sqlite3BtreeCursorDb(). It was only being used for an assert() statement, which can be done differently. (CVS 6683) (check-in: 5904af6e user: danielk1977 tags: trunk)
01:00
Additional refinements to Expr handling. Restore compression of trigger expressions. Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue. Remove an unnecessary ExprDup from CHECK constraint processing. And so forth. (CVS 6682) (check-in: 4ac2bdfb user: drh tags: trunk)
2009-05-27
10:31
Simplifications to the Expr object: Remove Expr.span completely and convert Expr.token into a char* Expr.zToken. Also simplify the Token object by removing the Token.dyn and Token.quoted fields. (CVS 6681) (check-in: 7cb1c3ba user: drh tags: trunk)
2009-05-25
15:00
Version 3.6.14.2 (CVS 6680) (Leaf check-in: ab76d1a2 user: drh tags: branch_3_6_14, release)
14:17
Fix the rtree test module so that it works even if the ext/ subfolder is omitted from the tree. (CVS 6679) (check-in: 086206e1 user: drh tags: trunk)
12:40
Update the configure script for version 3.6.14.2. (CVS 6678) (check-in: 58373119 user: drh tags: branch_3_6_14)
12:02
Port the fix for ticket #3879 (check-in (6676)) to the 3.6.14 branch. (CVS 6677) (check-in: d2fdae8e user: drh tags: branch_3_6_14)
11:46
When pinning a temp register after it is reused by the column cache, make sure all instances of that register in the cache are pinned so that the register is never reused for a different purpose. Ticket #3879. (CVS 6676) (check-in: 5f358e63 user: drh tags: trunk)
11:46
Add a test case for ticket #3879. (CVS 6675) (check-in: 5b9b66f4 user: danielk1977 tags: trunk)
2009-05-24
21:59
Additional clarification of the 3rd parameter to sqlite3_create_function(). Documentation change only; no changes to code. Ticket #3875. (CVS 6674) (check-in: dd75e376 user: drh tags: trunk)
11:08
In the previous, the upper bound on the number of function arguments is 127, not 255. Ticket #3876 (CVS 6673) (check-in: 4fe4c5fa user: drh tags: trunk)
11:07
Correct and clarify the documentation on the third parameter to sqlite3_create_function(). (CVS 6672) (check-in: 6b7929ed user: drh tags: trunk)
2009-05-22
15:43
Do not transform a WHERE clause of the form "a = ? OR a = ?" to "a IN (?, ?)" if "a" is a column of a virtual table. Ticket #3871. (CVS 6671) (check-in: fad88e71 user: danielk1977 tags: trunk)
11:12
Add an assert() to pcache1.c to double-check that page cache buffer memory is never allocated if pcache1 is not enabled. Ticket #3872 (CVS 6670) (check-in: 93369d91 user: drh tags: trunk)
11:10
Additional changes to pcache1 to prevent the page buffer memory from being configured if pcache1 is not enabled. Ticket #3872. (CVS 6669) (check-in: 5153ad19 user: drh tags: trunk)
10:53
Make sure sqlite3_shutdown() completely disables the default pager cache mechanism in pcache1.c. Ticket #3872. Also fix some comments associated with configuring the page cache. (CVS 6668) (check-in: 6240992c user: drh tags: trunk)
01:02
Add omitted word in the documentation for total_change_count(). ticket #3870. (CVS 6667) (check-in: 3f6fd16f user: drh tags: trunk)
01:00
Fix an 8-byte alignment problem on HP/UX. Ticket #3869 (CVS 6666) (check-in: fc64f850 user: drh tags: trunk)
2009-05-21
20:41
Simplifications to expr.c in support of full coverage testing. (CVS 6665) (check-in: 309adb5e user: drh tags: trunk)
15:15
In the CLI in the ".dump" command, do not attempt to clear the sqlite_sequence table until the first row of content of that table is seen. Ticket #3867 (CVS 6664) (check-in: bedd5ad1 user: drh tags: trunk)
14:51
In the CLI, always "dump" the sqlite_sequence table last. Ticket #3867 (CVS 6663) (check-in: a0028d48 user: drh tags: trunk)
04:42
Add conditional 'extern "C"' block to sqlite3async.h. Ticket #3866. (CVS 6662) (check-in: e4d1b117 user: danielk1977 tags: trunk)
2009-05-20
20:10
Fix a memory leak that occurs when an out-of-memory error occurs while preparing a statement that has multiple virtual table updates within triggers. Other virtual table changes to support full-coverage testing. (CVS 6661) (check-in: 02b77a58 user: drh tags: trunk)
16:22
Remove unused, undocumented, and untested error reporting logic from the xFindFunction interface in virtual tables. (CVS 6660) (check-in: 55d6ced2 user: drh tags: trunk)
02:40
Updates to the extension loading logic to support full coverage testing. (CVS 6659) (check-in: 929cfbc6 user: drh tags: trunk)
2009-05-19
19:04
Changes to select.c to facilitate full coverage testing. (CVS 6658) (check-in: f678ed34 user: drh tags: trunk)
14:21
Improvements to the SQLITE_INT_TO_PTR macro to reduce the number of warnings. For some platforms it might be necessary to compile with the -DHAVE_STDINT_H flag. Ticket #3860. (CVS 6657) (check-in: 1b0ee9d1 user: drh tags: trunk)
03:21
Update the showdb.c utility so that it works with databases larger than 4GiB. (CVS 6656) (check-in: 9675b622 user: drh tags: trunk)
00:01
Version 3.6.14.1 (CVS 6655) (check-in: e4267c87 user: drh tags: branch_3_6_14, release)
2009-05-18
17:11
Port the sqlite3_backup fix of check-in (6632), ticket #3858 onto the 3.6.14.1 branch. (CVS 6654) (check-in: 0d3abee2 user: drh tags: branch_3_6_14)
16:22
Update the configure script for the 3.6.14.1 release. (CVS 6653) (check-in: 4ebb8501 user: drh tags: branch_3_6_14)
16:14
Port patches from the trunk into the 3.6.14.1 branch: the group_concat() fix of check-in (6616), ticket #3841 and the pcache fix of check-in (6619), ticket #3844. (CVS 6652) (check-in: 2a277c55 user: drh tags: branch_3_6_14)
16:12
Update the version number for the 3.6.14.1 branch. (CVS 6651) (check-in: f06cae3b user: drh tags: branch_3_6_14)
16:04
Fix memdb.test so that it works when OMIT_AUTOVACUUM is defined. (CVS 6649) (check-in: 8c3c0c24 user: danielk1977 tags: trunk)
15:46
Changes to select.c in support of full coverage testing. (CVS 6647) (check-in: e225f365 user: drh tags: trunk)
13:34
Fix a typo on a comment associated with check-in (6641) and ticket #3860. (CVS 6646) (check-in: 43051e03 user: drh tags: trunk)
2009-05-17
15:29
Remove debugging code accidently left in check-in (6642). Ticket #3862. (CVS 6645) (check-in: 0d974613 user: drh tags: trunk)
15:26
Take care to free the memory for the ORDER BY clause on SELECT statements containing errors and contained within triggers. Ticket #3863. (CVS 6644) (check-in: dd665eac user: drh tags: trunk)
12:07
Fix a typo in the sqlite3_blob_open() documentation. (CVS 6643) (check-in: 92866482 user: drh tags: trunk)
02:06
Tweaks and simplifications to select.c to facility full coverage testing. (CVS 6642) (check-in: e3ccbc69 user: drh tags: trunk)
2009-05-16
17:38
Attempt to provide a version of the SQLITE_INT_TO_PTR macro that works on both llvm-gcc-4.2 and MSVC. Ticket #3860. (CVS 6641) (check-in: ddee7ff2 user: drh tags: trunk)
2009-05-15
14:41
Re-enable file locking in async4.test. (CVS 6640) (check-in: f7098187 user: danielk1977 tags: trunk)
2009-05-14
22:37
Documentation enhancements for sqlite3_update_hook(), sqlite3_commit_hook(), and the various incremental blob I/O routines. No changes to code. (CVS 6639) (check-in: e8ca932d user: drh tags: trunk)
19:26
Change the sqlite3_backup_finish() interface so that calling it with a NULL pointer is a harmless no-op. One other change to backup.c to facilitate full coverage testing. (CVS 6638) (check-in: 06bc8917 user: drh tags: trunk)
03:21
Documentation updates to better explain the SQLITE_OPEN_EXCLUSIVE flag. Ticket #3855. (CVS 6637) (check-in: 6bd44f36 user: shane tags: trunk)
2009-05-13
22:58
Additional simplifications to build.c in support full coverage testing. (CVS 6636) (check-in: 913d1114 user: drh tags: trunk)
17:35
Remove incorrect NEVER() macro in the previous check-in (6634). (CVS 6635) (check-in: c6849579 user: drh tags: trunk)
17:21
Changes to build.c to help facilitate full coverage testing. (CVS 6634) (check-in: 264ace50 user: drh tags: trunk)
14:46
Do not run async4.test as part of the "journaltest" permutation. It specifically tests that the asynchronous IO backend can be configured to violate the assumptions made by journaltest. (CVS 6633) (check-in: b19bf39b user: danielk1977 tags: trunk)
07:52
When locking a database file, check if any backup objects need to be restarted even if the page cache is empty. Ticket #3858. (CVS 6632) (check-in: 90309008 user: danielk1977 tags: trunk)
2009-05-12
18:00
Remove debugging comments left in the prior check-in by mistake. (CVS 6631) (check-in: 82070560 user: drh tags: trunk)
17:46
Move the sqlite3MinimumFileFormat() routine from build.c over to alter.c since alter.c is the only code that uses it. Additional changes and cleanup to build.c to facility coverage testing. (CVS 6630) (check-in: 6fe3750a user: drh tags: trunk)
13:35
Make sure the SQLITE_OPEN_EXCLUSIVE flag is ignored by sqlite3_open_v2(). That flag is to be used by the VFS interface only. Ticket #3855. (CVS 6629) (check-in: c37f0279 user: drh tags: trunk)
00:40
Tweaks to build.c to facilitate coverage testing. (CVS 6628) (check-in: 6572b438 user: drh tags: trunk)
2009-05-11
23:38
If a virtual table constructor returns SQLITE_NOMEM, set the mallocFailed flag in the corresponding database connection to insure that the error is propagated back to the top layer. (CVS 6627) (check-in: 5635666f user: drh tags: trunk)
20:53
Rework the logic that generates a schema for tables created using "CREATE TABLE ... AS SELECT ...". Instead of trying to copy the raw datatype string from the right-hand side, just make the type one of TEXT, INT, REAL, NUM, or nothing. This is much simpler than trying to parse and quote datatype strings. Other minor implifications to build.c are bundled with this change. (CVS 6626) (check-in: 33cf8359 user: drh tags: trunk)
18:22
Enhance the parser to allow nested parentheses in the module argument of a CREATE VIRTUAL TABLE statement. (CVS 6625) (check-in: 93772bd7 user: drh tags: trunk)
2009-05-09
23:29
Convert an always-true condition in hash.c into an assert(). (CVS 6624) (check-in: 42372999 user: drh tags: trunk)
18:59
Add the SQLITE_TESTCTRL_ASSERT and SQLITE_TESTCTRL_ALWAYS codes for the sqlite3_test_control() interface. (CVS 6623) (check-in: 38df91c2 user: drh tags: trunk)
15:17
Change sqlite_blob_open() so that it zeros the output pBlob pointer when it fails. The other sqlite3_blob interfaces accept a NULL pointer as input. (CVS 6622) (check-in: 999d507b user: drh tags: trunk)
00:18
Changes to the trigger.c module that facilitate full coverage testing. (CVS 6621) (check-in: 567ccc68 user: drh tags: trunk)
2009-05-08
11:34
Fix a warning in the osx-specific part of os_unix.c. Ticket #3847. (CVS 6620) (check-in: 254ca327 user: danielk1977 tags: trunk)
06:52
Correctly update the cache page-count when discarding pages in the xTruncate() method of the default pcache implementation. Otherwise the effective configured size of the cache shrinks each time xTruncate() is called. Fix for #3844. (CVS 6619) (check-in: 88211cee user: danielk1977 tags: trunk)
2009-05-07
14:11
If compiling FTS3 in the amalgamation, include the ctype.h header file. Ticket #3843. (CVS 6618) (check-in: 660108ef user: drh tags: trunk)
13:43
Change the sqlite3_create_function() family of routines to return SQLITE_MISUSE instead of SQLITE_ERROR if their parameters are incorrect. (CVS 6617) (check-in: 866f13e2 user: drh tags: trunk)
12:17
Make sure the iteration counter on aggregate functions is reset each time the aggregate is used in an correlated subquery. Ticket #3841. (CVS 6616) (check-in: 4a86de35 user: drh tags: trunk)
02:26
Version 3.6.14 (CVS 6615) (check-in: 469ad1de user: drh tags: trunk, release)
2009-05-06
19:03
Fix compiler warning found with gcc -Wextra. (CVS 6614) (check-in: 93bdbc5e user: drh tags: trunk)
18:57
Changes to silence compiler warnings under MSVC. (CVS 6613) (check-in: df599237 user: shane tags: trunk)
18:42
Fix three variable initialization problems found by valgrind. (CVS 6612) (check-in: 37428435 user: drh tags: trunk)
15:24
updated vxworks makefile for 3.6.14 release (CVS 6611) (check-in: 5d4bffaa user: chw tags: trunk)
00:52
Add a short pause to force a context swap while waiting for a separate process to clear its lock in the lock4.test script. (CVS 6610) (check-in: 4357e76d user: drh tags: trunk)
00:49
Fix the test case misc3-6.11 so that it works correctly on UTF16 databases after the fix of for ticket #3838, check-in (6603) (CVS 6609) (check-in: c1e739e3 user: drh tags: trunk)
2009-05-05
20:02
Minor changes to the sqlite3_exec() implementation in legacy.c to facility full coverage testing. (CVS 6608) (check-in: 9e3016c1 user: drh tags: trunk)
18:01
Bump the version number up to 3.6.14. (CVS 6607) (check-in: f4549904 user: drh tags: trunk)
17:37
Changes to vacuum.c to facilitate full coverage testing. (CVS 6606) (check-in: 86628465 user: drh tags: trunk)
15:46
Make sure the left-shift operator never overflows. (CVS 6605) (check-in: 300da301 user: drh tags: trunk)
15:46
Changes to update.c to facilitate full coverage testing. (CVS 6604) (check-in: 25a11b9e user: drh tags: trunk)
12:54
Make sure the default value on a column added using ALTER TABLE has the correct encoding. Ticket #3838. (CVS 6603) (check-in: 7f89a860 user: drh tags: trunk)
2009-05-04
20:20
Make sure va_arg() does not occur on the same line as any "if" statement or "?" operator. (CVS 6602) (check-in: 3543be6e user: drh tags: trunk)
19:01
Avoid parsing cells that fit entirely on the b-tree page when searching a b-tree index. (CVS 6601) (check-in: 77a82395 user: danielk1977 tags: trunk)
18:01
Changes to auth.c to promote full coverage testing. (CVS 6600) (check-in: c7615b44 user: drh tags: trunk)
11:42
Speed up INSERT operations that add data to UNIQUE or PRIMARY KEY indexes by rationalizing duplicate seek operations. (CVS 6599) (check-in: cac4f3d8 user: danielk1977 tags: trunk)
01:58
Work toward cleaning up the authorizer interface. Work is on-going. This is an incremental check-in. (CVS 6598) (check-in: 694662f7 user: drh tags: trunk)
2009-05-03
20:23
Changes to facility full coverage testing of util.c. (CVS 6597) (check-in: a6122990 user: drh tags: trunk)
01:01
More changes to insert.c to facilitate full coverage testing. (CVS 6596) (check-in: 46c4ec96 user: drh tags: trunk)
2009-05-02
15:46
Simplifications to the uniqueness constraint failure error message generation code. (CVS 6595) (check-in: 8f3cac76 user: drh tags: trunk)
13:29
Remove the aFKey hash table, which was not being used. Simplify the FKey object. Simplify the hash.c module since the copyKey parameter formerly used only by aFKey is now no longer required. (CVS 6594) (check-in: 80c43a35 user: drh tags: trunk)
12:02
Reduce the size of an integer literal in rowhash.tcl so that the test is able to run with the default TCL installation on Mac OS 10.5. (CVS 6593) (check-in: 2229acce user: drh tags: trunk)
10:03
When a cursor points at the last entry of an intkey btree after an insert, leave it there (instead of moving it to the tree root node). This speeds up statements of the form "INSERT INTO ... SELECT ..." that use auto-generated rowids. (CVS 6592) (check-in: 9950c0a7 user: danielk1977 tags: trunk)
07:36
Do not reset the cursor before seeking it in sqlite3BtreeInsert(). This speeds up INSERT operations that use auto-generated rowid values. (CVS 6591) (check-in: 20c4acc2 user: danielk1977 tags: trunk)
00:28
When checking indices for xfer compatibility, compare collating sequences by string, not by pointer. (CVS 6590) (check-in: 7d2b80c7 user: drh tags: trunk)
2009-05-01
21:13
Record within the Token structure itself whether or not the token has been dequoted. This steals one bit from the length of a token and thus limits the size of tokens to 1GiB. (CVS 6589) (check-in: 12bcb03d user: drh tags: trunk)
15:17
Fix an error message that is generated if the number of columns do not match on an INSERT into a virtual table with hidden columns. (CVS 6588) (check-in: 795b453c user: drh tags: trunk)
13:16
Update PRAGMA integrity_check so that it treats SQLITE_IOERR_NOMEM errors from underlying components the same as SQLITE_NOMEM errors. (CVS 6587) (check-in: 26444f2a user: drh tags: trunk)
10:55
Change lock2.test so that it does not enter a busy loop if the child process exists unexpectedly. (CVS 6586) (check-in: 164a7f5a user: danielk1977 tags: trunk)
06:19
Remove a NEVER() clause from a condition that is true at least once when running attachmalloc.test. (CVS 6585) (check-in: 514efc73 user: danielk1977 tags: trunk)
05:23
Fix for tempdb.test so that it passes when running the inmemory_journal permutation test. (CVS 6584) (check-in: 0256187b user: danielk1977 tags: trunk)
02:08
Fix processing of BEFORE triggers on INSERT statements with RHS SELECTs that insert a NULL into the INTEGER PRIMARY KEY. Ticket #3832. (CVS 6583) (check-in: 4a1f6a3a user: drh tags: trunk)
2009-04-30
17:45
More cleanup, etc. to support MSVC compiles. (CVS 6582) (check-in: 2cd9655e user: shane tags: trunk)
17:38
Disable an always-false test in the attach.c module. (CVS 6581) (check-in: 92b69481 user: drh tags: trunk)
16:41
Fix a problem with in-memory sub-journals and exclusive locking mode. Also a test script problem introduced by (6575). (CVS 6580) (check-in: d67af3f5 user: danielk1977 tags: trunk)
15:59
Documentation updates for sqlite3_set_authorizer(). No changes to code. (CVS 6579) (check-in: 41f39c31 user: drh tags: trunk)
13:30
Disallow attaching the same database multiple times to the same db connection in shared cache mode, since doing so leads to deadlock. (CVS 6578) (check-in: 715f14f1 user: drh tags: trunk)
12:25
Fix apparent typo on exclusive.test in the (6575) check-in. (CVS 6577) (check-in: 95d22405 user: drh tags: trunk)
12:25
Changes sqlite3TempInMemory() to take a const parameter. (CVS 6576) (check-in: aa29a14c user: drh tags: trunk)
09:10
When SQLite is configured to use in-memory temp files (either by setting SQLITE_TEMP_STORE during compilation or using the temp_store pragma at run time), store statement/savepoint journals in memory also. Ticket #3825. (CVS 6575) (check-in: 38f8c5a1 user: danielk1977 tags: trunk)
05:40
Fix a memory leak introduced in the previous check-in. (CVS 6574) (check-in: f082bf36 user: drh tags: trunk)
05:19
Take care not to leave a zombie attached database if the attachment fails due to an encoding mismatch. Update attach logic to always use dynamically allocated error message strings. (CVS 6573) (check-in: a6cb4002 user: drh tags: trunk)
01:22
Remove always-true tests from attach.c. In btree.c, always test the return from sqlite3PagerSetPagesize() since it might return SQLITE_NOMEM. (CVS 6572) (check-in: 8bf60b24 user: drh tags: trunk)
00:11
Remove an always-true test from delete.c. Move the sqlite3OpenTable() routine from delete.c to insert.c since it is not used in delete.c. (CVS 6571) (check-in: 71756dc8 user: drh tags: trunk)
2009-04-29
18:12
Fixed compile for MSVC; removed compiler warnings; changes for NDEBUG build; minor code tweaks. (CVS 6570) (check-in: e98b1242 user: shane tags: trunk)
17:49
Modify the assemblePage() function in btree.c so that it runs slightly faster. (CVS 6569) (check-in: 7ec42e98 user: danielk1977 tags: trunk)
14:33
Update the documentation on the sqlite3_changes() and sqlite3_total_changes() functions. (CVS 6568) (check-in: 58c7bdb2 user: drh tags: trunk)
11:50
Fix a case in where.c where a crash can follow a malloc failure. Also modify test code in test8.c to check a return code that was being dropped (causing a test in vtab_err.test to fail). (CVS 6567) (check-in: 9664e2b6 user: danielk1977 tags: trunk)
11:31
Add a version of cellSizePtr() that is faster than using sqlite3BtreeParseCellPtr(). This speeds up balance_nonroot(). (CVS 6566) (check-in: e8f7f7b7 user: danielk1977 tags: trunk)
06:27
Simplify a conditional expression in btree.c. (CVS 6565) (check-in: fc3a5ac2 user: danielk1977 tags: trunk)
2009-04-28
18:00
Fix an out-of-order test number in blob.test. Cosmetic change. No changes to code. Ticket #3830. (CVS 6564) (check-in: e8556542 user: drh tags: trunk)
17:33
Fix asserts in hash.c so that zero-length symbols can be used. (CVS 6563) (check-in: fe9f00aa user: drh tags: trunk)
16:37
When testing with TEMP_STORE=3 and the test pcache, only run 20 iterations in trans.test. Otherwise the test pcache runs out of memory. (CVS 6562) (check-in: 0799b729 user: danielk1977 tags: trunk)
16:35
Remove an unused function declaration from hash.h. (CVS 6561) (check-in: fcf70bb8 user: drh tags: trunk)
15:48
Further adjustment to rowhash.test to account for rowid collisions. (CVS 6560) (check-in: 94a23f99 user: danielk1977 tags: trunk)
15:43
Simplifications to the symbol table implementation in hash.c. For very small symbol tables (less than 10 entries) a simple linked list is used instead of a hash table. Number of hash table buckets is limited to prevent large allocations. (CVS 6559) (check-in: 5c737835 user: drh tags: trunk)
15:35
Have sqlite3_create_collation() return MISUSE if passed an encoding value other than SQLITE_UTF8, SQLITE_UTF16LE, SQLITE_UTF16BE, SQLITE_UTF16 or SQLITE_UTF16_ALIGNED. (CVS 6558) (check-in: 7975b6f2 user: danielk1977 tags: trunk)
13:01
Do not store the zero string terminator as part of the name when holding symbols in the symbol table. (CVS 6557) (check-in: 23d67af3 user: drh tags: trunk)
12:08
Another fix to the same assert as in (6555). It can also fail after a malloc error. (CVS 6556) (check-in: e096f90a user: danielk1977 tags: trunk)
11:10
Fix an assert that could fail after a parse error in expr.c. (CVS 6555) (check-in: a37d1174 user: danielk1977 tags: trunk)
05:27
Avoid changing the pager journal-mode once a write-transaction is open, even if no database pages have been modified. (CVS 6554) (check-in: ad8aba3e user: danielk1977 tags: trunk)
04:51
Add test cases for sqlite3_complete with an EXPLAIN QUERY PLAN on a CREATE TRIGGER statement. Ticket #3828. (CVS 6553) (check-in: 6b86b40e user: drh tags: trunk)
04:47
Make sure sqlite3_open16() always zeros the db return pointer if SQLite initialization fails. (CVS 6552) (check-in: 057c7d17 user: drh tags: trunk)
04:46
Enhance sqlite3_complete() so that it understands EXPLAIN QUERY PLAN. Ticket #3828. Testing is done in TH3. (CVS 6551) (check-in: 3ac1b15f user: drh tags: trunk)
2009-04-27
18:46
Bring the documenation and implementation of sqlite3_collation_needed() into agreement. Use a more efficient implementation of sqlite3ErrStr(). sqlite3_result_error_code() now calls sqlite3ErrStr() if no prior error string was set. (CVS 6550) (check-in: cb9af829 user: drh tags: trunk)
2009-04-25
08:39
Tests for the new asynchronous IO API. (CVS 6549) (check-in: 11b2564e user: danielk1977 tags: trunk)
2009-04-24
20:32
Add another test case for the "x IS NULL" uniqueness problem of ticket #3824. No changes to code. This just double-checks that everything is working now. (CVS 6548) (check-in: 3ceae357 user: drh tags: trunk)
18:06
Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800. (CVS 6547) (check-in: 600482d1 user: danielk1977 tags: trunk)
15:46
Get rid of the special RowSet processing in where.c and move that into clients. Added the WHERE_DUPLICATES_OK option to eliminate an unnecessary RowSet during DELETE with a WHERE clause containing ORs. (CVS 6546) (check-in: 98606bee user: drh tags: trunk)
14:51
Make sure that the optimizer realizes that an "x IS NULL" contraint does not necessarily give a single-row result even on a UNIQUE index. Ticket #3824. (CVS 6545) (check-in: 207335fd user: drh tags: trunk)
10:13
Make selecting the asynchronous IO file-locking mode a runtime operation. Still untested. (CVS 6544) (check-in: 577277e8 user: danielk1977 tags: trunk)
09:27
Improve comments and documentation of the asynchronous IO VFS module. (CVS 6543) (check-in: 92bc6be2 user: danielk1977 tags: trunk)
2009-04-23
19:08
os_win.c, winOpen(), changed to handle the SQLITE_OPEN_EXCLUSIVE flag and sharing modes in the same manner as os_unix.c. Ticket #3821. (CVS 6542) (check-in: 18fef3fc user: shane tags: trunk)
18:42
Updated misc. test scripts for Windows testing with gcc/cygwin; (CVS 6541) (check-in: 1e2c7159 user: shane tags: trunk)
18:41
Remove some incorrect async tests; (CVS 6540) (check-in: 03af25b3 user: shane tags: trunk)
14:58
Move the asynchronous IO code from src/test_async.c to ext/async/. Refactor it to be a standalone module and to support windows. (CVS 6539) (check-in: e71fb0fb user: danielk1977 tags: trunk)
13:22
Rework the column-cache mechanism to be more robust (and more correct). The column-alias cache is currently disabled, (CVS 6538) (check-in: dd4d67a6 user: drh tags: trunk)
2009-04-22
17:15
Eliminate the OP_VRowid opcode. The regular OP_Rowid now work for both regular and virtual tables. (CVS 6537) (check-in: ecbef450 user: drh tags: trunk)
15:32
Change the OP_Rowid opcode so that a deferred OP_Seek is pending, it simply pulls the rowid from the deferred seek target and does not actually move the cursor or do a seek. Other where.c cleanups. (CVS 6536) (check-in: 1c508a99 user: drh tags: trunk)
02:15
Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535) (check-in: e963bed0 user: drh tags: trunk)
00:47
Extend the Rowset object to contain all the capabilities of Rowhash in addition to its legacy capabilities. Use Rowset to replace Rowhash. In addition to requiring less code, This removes the 2^32 result row limitation, uses less memory, and gives better bounds on worst-case performance. The Rowhash implementation has yet to be removed. (CVS 6534) (check-in: b101cf70 user: drh tags: trunk)
2009-04-21
18:20
Move RowHashBlock.nUsed to RowHash.nUsed. Fix a typo in a comment in test_async.c. (CVS 6533) (check-in: 799d31d9 user: danielk1977 tags: trunk)
17:23
Fix a segfault that followed a malloc failure introduced by (6527). (CVS 6532) (check-in: 08e71b11 user: danielk1977 tags: trunk)
17:13
Adjust the rowhash.test module so that it recovers gracefully in the rare event of a rowid collision. (CVS 6531) (check-in: 72e16809 user: drh tags: trunk)
16:15
Allocate the initial RowHash object using lookaside. (CVS 6530) (check-in: 9b30ab71 user: drh tags: trunk)
15:05
New comments and minor refactoring of rowhash.c. (CVS 6529) (check-in: b8cb4f3e user: drh tags: trunk)
12:02
Remove a redundant test from sqlite3_shutdown(). (CVS 6528) (check-in: 6f481ceb user: drh tags: trunk)
09:02
Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527) (check-in: f61e4cd9 user: danielk1977 tags: trunk)
2009-04-20
17:43
Change the journal_mode pragma so that it always returns the current journal mode, even on a failed attempt to change the journal mode. Allow the journal mode to be changed as long as there is not a pending transaction. Ticket #3811. (CVS 6526) (check-in: 419e320a user: drh tags: trunk)
13:32
Add new tests to show that journal_mode=OFF works with locking_mode=EXCLUSIVE as long as the journal_mode is set prior to the first transaction. Ticket #3811. (CVS 6525) (check-in: e62ac26f user: drh tags: trunk)
12:31
Clarify the documentation to make it clear that sqlite3_interrupt() does not effect new SQL statements that are started after the running statement count reaches zero. Ticket #3815. (CVS 6524) (check-in: 3182e8bf user: drh tags: trunk)
12:07
Do not use deprecated interfaces internally when compiling with SQLITE_OMIT_DEPRECATED. Ticket #3813. (CVS 6523) (check-in: 7f17956d user: drh tags: trunk)
11:34
Speed improvements by avoiding unnecessary calls to fstat() and ftruncate(). (CVS 6522) (check-in: 5b7e3a41 user: drh tags: trunk)
2009-04-19
20:51
Update comments and remove unused code in btree.c. No functional changes. (CVS 6521) (check-in: bd860184 user: drh tags: trunk)
12:23
Make extra calls to sqlite3_shutdown() be harmless no-ops. (CVS 6520) (check-in: d8082295 user: drh tags: trunk)
2009-04-17
16:54
Revise the implementation of sqlite3_initialize() slightly in order to make it more easily testable. The functionality should be unchanged. (CVS 6519) (check-in: bb1a390a user: drh tags: trunk)
15:18
Get the behavior of SQLITE_HAVE_ISNAN right. It was reversed in check-in (6517). Ticket #3809. (CVS 6518) (check-in: 97c6ea23 user: drh tags: trunk)
11:57
Add the SQLITE_HAVE_ISNAN compile-time option which, if present, causes SQLite to use the math library isnan() function rather than its own homebrew implementation of isnan(). (CVS 6517) (check-in: 54d23521 user: drh tags: trunk)
11:56
Check-in (6514) did not completely remove the obsolete test, resulting in a segfault. This check-in finishes the job. Ticket #3802. (CVS 6516) (check-in: c29b37ea user: drh tags: trunk)
2009-04-16
17:45
Add NEVER and ALWAYS tags to conditionals in analyze.c that always false or true. (CVS 6515) (check-in: fbbc80ea user: drh tags: trunk)
16:32
Remove obsolete test from bindxfer.tcl. Ticket #3802. (CVS 6514) (check-in: b1b09617 user: drh tags: trunk)
16:30
Changes to alter.c to enable full branch coverage testing. (CVS 6513) (check-in: 6a91ab08 user: drh tags: trunk)
12:58
Make sure the 'unixepoch' converter in the date and time functions rounds to the nearest millisecond rather than truncating downward to the next smaller millisecond. Ticket #3808. (CVS 6512) (check-in: e6e036b3 user: drh tags: trunk)
00:24
In a 3-fold compound SELECT make sure early code generation of the SELECTs to the right do not dereference non-existant columns in SELECTs on the left. (CVS 6511) (check-in: 414f3408 user: drh tags: trunk)
2009-04-15
15:16
Fix the group_concat() function so that it inserts the separator string even if the initial content strings are empty. Ticket #3806. (CVS 6510) (check-in: b83fbf15 user: drh tags: trunk)
14:36
Fix access violation on WinCE platforms. Ticket #3804. (CVS 6509) (check-in: e203ad40 user: shane tags: trunk)
13:39
Mark an branch in alter.c as always false. Only run the assert() on the sqlite3_aggregate_count() function in func.c if the SQLITE_OMIT_DEPRECATED compile-time option is off. (CVS 6508) (check-in: c0bba77a user: drh tags: trunk)
13:07
Disable the temptrigger.test test script when shared cache is disabled. Ticket #3801. (CVS 6507) (check-in: feedbce8 user: drh tags: trunk)
2009-04-14
18:44
nMax can be zero and subtracting 1 from an unsigned zero produces undesirable results (CVS 6506) (check-in: a117d82d user: aswift tags: trunk)
12:58
Change the sqlite3_bind_value() implementation to use a default branch on the type switch so that there are no untested jumps in the switch. (CVS 6505) (check-in: d0a8bd6a user: drh tags: trunk)
12:43
Reimplement the sqlite3_bind_value() interface so that it works when the value being bound comes from a different database connection. (CVS 6504) (check-in: 3db0c798 user: drh tags: trunk)
2009-04-13
14:43
Enhancements to virtual table documentation. Comment changes only. No changes to code. (CVS 6503) (check-in: b0b2b283 user: drh tags: trunk)
09:29
Version 3.6.13 (CVS 6502) (check-in: 982cc7f4 user: drh tags: trunk, release)
09:09
Rerun autoconf in preparation for 3.6.13. (CVS 6501) (check-in: f683e222 user: drh tags: trunk)
08:14
updated Makefile.vxwSH4 and renamed it to Makefile.vxworks, should now be able to support SH4 and PPC targets. (CVS 6500) (check-in: e4a370c7 user: chw tags: trunk)
2009-04-11
19:09
Fix malloc5.test so it work on both 64-bit and 32-bit systems. The ::tcl_platform(wordSize) variable has to be used to adjust some memory sizes. (CVS 6499) (check-in: ea20f78e user: drh tags: trunk)
16:27
Fix an obscure problem with recovery from I/O errors while rolling back. (CVS 6498) (check-in: 24ff4861 user: drh tags: trunk)
16:27
Add a comments and an assert() to the virtual table implementation. No functional changes. (CVS 6497) (check-in: ac5d0c0a user: drh tags: trunk)
16:06
Fix a case where a corrupt database could cause an assert() to fail. (CVS 6496) (check-in: 2c560e05 user: danielk1977 tags: trunk)
14:46
Allocate a little extra scratch space for the memsubsys1 tests. The extra space is needed in some configurations. (CVS 6495) (check-in: 54844192 user: drh tags: trunk)
11:38
Increase the hard upper bound on the number of pcache pages in test_pcache when the test harness is compiled for in-memory temp tables. Some of the test cases need to extra memory to avoid unplanned out of memory errors. (CVS 6494) (check-in: 7f2d6a0b user: drh tags: trunk)
10:25
Replace invocation of (really_finish_test) from async.test with (finish_test). Otherwise a tcl exception may be thrown when running permutations. (CVS 6493) (check-in: e6465e9d user: danielk1977 tags: trunk)
09:51
In sqlite3PagerMovepage(), avoid holding a reference to page number X when calling sqlite3PcacheRekey() to move another page to page number X. (CVS 6492) (check-in: 4447c94f user: danielk1977 tags: trunk)
2009-04-10
23:11
Remove more unused branches from vdbeapi.c. (CVS 6491) (check-in: 447e9595 user: drh tags: trunk)
20:55
In the async test, make sure procedures do not get renamed over top of one another. (CVS 6490) (check-in: b6430cc4 user: drh tags: trunk)
20:32
Remove unused branches from the vdbeapi.c module. (CVS 6489) (check-in: 7ae0fc7e user: drh tags: trunk)
18:41
Increase the error tolerance when verifying the approximate size of a pseudo-random database in backup_ioerr.test. Otherwise the test could fail depending on the PRNG seed. (CVS 6488) (check-in: deda5ab3 user: danielk1977 tags: trunk)
18:32
Do not run io.test as part of the inmemory_journal permutation. io.test uses the tcl API to test for journal files in the file-system (which of course never exist when running with in-memory journals). (CVS 6487) (check-in: 493f03bd user: danielk1977 tags: trunk)
18:21
Re-enable the alt_pcache tests in permutations.test so that they run automatically during a full regression. Fix async.test so that it works with the permutation.test pcacheNN test modules. (CVS 6486) (check-in: 310192cc user: drh tags: trunk)
15:42
Fix MSVC compiler warning in vdbeaux.c. (CVS 6485) (check-in: d619465e user: shane tags: trunk)
15:38
Disable the select1-15 tests when locking_mode is EXCLUSIVE. Ticket #3771. (CVS 6484) (check-in: 88cefbb4 user: drh tags: trunk)
15:02
Changes to jrnlmode.test to account for in-memory temp databases. (CVS 6483) (check-in: c31d4359 user: danielk1977 tags: trunk)
14:28
Simplifications and additional comments on the sqlite3_get_table() implementation. Changes to facilitate full branch test coverage. (CVS 6482) (check-in: 57e3e6b3 user: drh tags: trunk)
12:55
Changes to ensure that when running in shared-cache mode with a non-threadsafe build, the correct busy-handler callback is always invoked. (CVS 6481) (check-in: 683e4bd7 user: danielk1977 tags: trunk)
09:47
Always set BtShared.db when entering the BtShared mutex. Ticket #3793. (CVS 6480) (check-in: ed6620ba user: danielk1977 tags: trunk)
00:56
Force 8-byte alignment of sqlite3_value objects in the sqlite3VdbeUnpackRecord() primitive. Ticket #3777. (CVS 6479) (check-in: 2cc68272 user: drh tags: trunk)
2009-04-09
21:02
Increase the version number to 3.6.13 in preparation for the next release. (CVS 6478) (check-in: 9a09a474 user: drh tags: trunk)
14:27
Provide dummy DWORD arguments to output parameters of GetDiskFreeSpace(A|W), NULL causes access violations on Windows NT 4.0 (CVS 6477) (check-in: 5350a658 user: chw tags: trunk)
14:02
Remove misuse detection from the deprecated sqlite3_transfer_bindings() interface. The code was hard to test and was simply taking up space. (CVS 6476) (check-in: 4cd82910 user: drh tags: trunk)
01:23
Enhance sqlite3_shutdown() so that it automatically invokes sqlite3_reset_auto_extension(). This is a harmless no-op if applications are already calling sqlite3_reset_auto_extension() prior to sqlite3_shutdown(). And it prevents possible memory corruption if they do not. So it works either way. Most of the changes are to the test cases. (CVS 6475) (check-in: 0c41f7cf user: drh tags: trunk)
2009-04-08
23:05
Simplify the implementation of the columnName() function in vdbeapi.c. This is a code cleanup only - no behavior changes. (CVS 6474) (check-in: 0628f586 user: drh tags: trunk)
23:04
Add an assert() to the implementation of count(*) that checks the correct operation of the sqlite3_aggregate_count() function. (CVS 6473) (check-in: f322be38 user: drh tags: trunk)
16:10
Reconfigure the default case for the printf switch in order to improve branch coverage. (CVS 6472) (check-in: 3cc79162 user: drh tags: trunk)
15:45
Remove a pair unnecessary conditions from printf.c. The "db" parameter is now required for sqlite3MPrintf(). (CVS 6471) (check-in: 6fe8b5d7 user: drh tags: trunk)
13:51
Minor refactoring of the expression-compaction logic for clarity of presentation. New comments added. The EXPRDUP_DISTINCTSPAN flag is removed as obsolete. (CVS 6470) (check-in: 44ded2ea user: drh tags: trunk)
12:21
Do not attempt to walk a TokenOnly or SpanOnly expression tree node. Ticket #3791. (CVS 6469) (check-in: 8362d883 user: drh tags: trunk)
11:49
Add a comment to printf.c - no changes to code. (CVS 6468) (check-in: ee5a4a0e user: drh tags: trunk)
2009-04-07
22:06
Fix the sqlite3_unlock_notify() interface so that when the callback is NULL it simply cancels any outstanding callbacks. (CVS 6467) (check-in: 9ccfcb76 user: drh tags: trunk)
22:05
Remove two unused tests from the integrity_check pragma logic. (CVS 6466) (check-in: 22999d31 user: drh tags: trunk)
14:38
Fix an incorrect assert in btree.c. (CVS 6465) (check-in: 2c1f5983 user: danielk1977 tags: trunk)
14:14
Fix compilation and testing when SQLITE_OMIT_TRIGGER is defined. Ticket #3786. (CVS 6464) (check-in: 277dace4 user: danielk1977 tags: trunk)
13:48
Only enable WHERE-tracing when both TEST and DEBUG are enabled. (CVS 6463) (check-in: 55b93649 user: drh tags: trunk)
11:21
Change "... myfunction() { ... }" to "... myfunction(void) { ... }" in a few pla ces. Ticket #3783. (CVS 6462) (check-in: 6f79e6ae user: danielk1977 tags: trunk)
09:16
Have OP_IdxRowid handle the case where the index entry it is reading from is deleted. (CVS 6461) (check-in: cdad29b5 user: danielk1977 tags: trunk)
05:35
Compile fixes and improvements for vxwork: fixed deadlock in semClose, detect if fcntl is usable, fall back to named semaphores if not. (CVS 6460) (check-in: efd0682b user: chw tags: trunk)
00:49
Remove an unused test for EXPLAIN-mode in the PRAGMA processing. (CVS 6459) (check-in: 909683b3 user: drh tags: trunk)
00:43
Always enable WHERE-tracing on a test build. Oops - accidentally included a debugging change to pragma.c in this check-in. The real fix for the pragma problem is in the following checking. (CVS 6458) (check-in: 567cf90b user: drh tags: trunk)
00:35
It is OK for a unix file descriptor to be zero. It just can't be negative. Adjust an assert accordingly. Ticket #3781. (CVS 6457) (check-in: 47aa7eb0 user: drh tags: trunk)
2009-04-06
17:50
Test cases and minor code changes to increase coverage of btree.c. (CVS 6456) (check-in: def3a016 user: danielk1977 tags: trunk)
15:55
Updates and clarification to the documentation of the sqlite3_temp_directory global variable. No changes to code. (CVS 6455) (check-in: aea99c57 user: drh tags: trunk)
14:16
Allow "default" to be a keyword used by PRAGMA statements. (CVS 6454) (check-in: ed99d2d9 user: drh tags: trunk)
12:26
Make sure the reverse_unordered_selects pragma works even on unindexed tables that are queried without a WHERE clause (CVS 6453) (check-in: d8c6b28a user: drh tags: trunk)
11:11
Check-in (6450) introduced the possibility of calling memset() with a negative 3rd argument. This fixes that bug. Ticket #3777. (CVS 6452) (check-in: 8ca612c4 user: drh tags: trunk)
2009-04-05
15:18
Fix a segfault in Lemon that occurs if the input grammar does not define a type for tokens. This does not effect SQLite since the SQLite grammar does define a type for tokens. (CVS 6451) (check-in: 4424aee9 user: drh tags: trunk)
12:22
Additional code to make sure and to assert that memory allocations have 8-byte alignment. Ticket #3777. (CVS 6450) (check-in: 208382e0 user: drh tags: trunk)
2009-04-04
16:02
Allow the journal_size_limit to be larger than 2147483647 bytes. (CVS 6449) (check-in: 81931259 user: drh tags: trunk)
15:53
Allow the journal_mode for in-memory databases to be either OFF or MEMORY, not just MEMORY. (CVS 6448) (check-in: 11c77f4c user: drh tags: trunk)
14:04
Clarify the meanings of the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags passed into the xSync method of the VFS. Comment changes only - no changes to code. (CVS 6447) (check-in: c47aeb37 user: drh tags: trunk)
2009-04-03
12:12
Remove a blank line in sqlite.h.in that was preventing the SQLITE_LOCKED_SHAREDCACHE constant appears in the automatically-generated documentation. Ticket #3775. (CVS 6446) (check-in: 65f9d3b9 user: drh tags: trunk)
12:04
Use integer rather than floating point compuations in converting from julian day number to unix-time to avoid round-off errors on Borland compilers. Ticket #3769. (CVS 6445) (check-in: c26f97bd user: drh tags: trunk)
01:43
Fix the PRAGMA parser so that it can accept negative numbers in parentheses, like the syntax diagrams say it should be able to. (CVS 6444) (check-in: 286e8317 user: drh tags: trunk)
2009-04-02
20:27
Make sure count(*) works on the sqlite_master table of an empty database. Ticket #3774. (CVS 6443) (check-in: e0c1a780 user: drh tags: trunk)
20:16
Make sure the VACUUM statement locks down the page_size and auto_vacuum modes after it runs. Otherwise, pragmas might change these settings on a populated database, resulting in problems. (CVS 6442) (check-in: 85e6a474 user: drh tags: trunk)
18:32
Fix the sqlite3_prepare() family of interfaces so that they zero the *ppStmt value even on an SQLITE_MISUSE return. Make it clear in the documentation that the ppStmt parameter cannot be zero. (CVS 6441) (check-in: 23bf9f26 user: drh tags: trunk)
18:28
Fix a problem causing the BtShared.isPending flag to be cleared to early. Also coverage improvements for btree.c. (CVS 6440) (check-in: 8f142344 user: danielk1977 tags: trunk)
17:23
Ensure the required VerifyCookie/Transaction/TableLock opcodes are added for "x IN (SELECT c FROM t)" expressions. Ticket #3771. (CVS 6439) (check-in: 058a2f20 user: danielk1977 tags: trunk)
17:22
Fix a couple of harmless nuisance warnings. (CVS 6438) (check-in: 53dac0a4 user: drh tags: trunk)
16:59
Disable the query flattening optimization when the subquery is a compound query with an ORDER BY clause. Ticket #3773 shows why that combination does not work. (CVS 6437) (check-in: 23f90d50 user: drh tags: trunk)
14:05
Change the way that the random() SQL function prevents the maximum negative integer so that it is testable. (CVS 6436) (check-in: 995f2b9b user: drh tags: trunk)
13:36
Use ALWAYS and NEVER macros on unchangeable conditions within func.c. (CVS 6435) (check-in: eb65e64e user: drh tags: trunk)
10:16
In the built-in SQL function implementations, improve some comments, fix an off-by-one error in detecting over-size strings, and add testcase() macros to verify that boundary values have been tested. (CVS 6434) (check-in: 868a487f user: drh tags: trunk)
09:07
Enforce the run-time sqlite3_limit() length limit on zeroblob(), not just the compile-time SQLITE_MAX_LENGTH limit. (CVS 6433) (check-in: a04f9e79 user: drh tags: trunk)
2009-04-01
23:49
Increase test coverage of bitvec.c slightly. Fix the line length on a comment in bitvec.c. (CVS 6432) (check-in: ca3aa3ba user: drh tags: trunk)
23:09
Mark untestable branches of memjournal.c as such. Reduce the size of a single block allocation to a power of two. Reenable the inmemory_journal permutation test. (CVS 6431) (check-in: 05c182a5 user: drh tags: trunk)
20:44
Fix the strftime() function so that the %s format can handle dates outside of the range of 1901 to 2038. Ticket #3769. (CVS 6430) (check-in: a95b843a user: drh tags: trunk)
19:35
Change an unreachable error condition test to an assert() in rowset.c. (CVS 6429) (check-in: 36115e40 user: drh tags: trunk)
19:07
Remove an unreachable branch from lockBtree(). Add comments. (CVS 6428) (check-in: 85979295 user: danielk1977 tags: trunk)
18:40
Fix a bug in the sqlite3Utf16ByteLen() function so that it computes the correct length even for strings that contain surrogate pairs. Ticket #3766. (CVS 6427) (check-in: 766bb7e5 user: drh tags: trunk)
18:25
Test that two database connections that use different VFS implementations may not share a cache. (CVS 6426) (check-in: 3a92c956 user: danielk1977 tags: trunk)
18:03
Remove the unused SQLITE_Vtab flag. (CVS 6425) (check-in: fdd78962 user: danielk1977 tags: trunk)
17:13
In pageReinit() in btree.c, only reinitialize a page if there are one or more references to it, not including the transient reference held by pager.c. This was always the intent. (CVS 6424) (check-in: 0c5a7d11 user: danielk1977 tags: trunk)
16:33
Remove dead code from the UTF conversion routines. Fix a bug in sqlite3_prepare16_v2() in which an out-of-memory error fails to set the statement return pointer to NULL. (CVS 6423) (check-in: 94e2f815 user: drh tags: trunk)
16:25
Remove an unreachable branch from allocateSpace() in btree.c. Add comments and asserts to the same function. (CVS 6422) (check-in: f8e15a54 user: danielk1977 tags: trunk)
09:41
Add some assert() statements to querySharedCacheTableLock(). (CVS 6421) (check-in: 3e3b5e86 user: danielk1977 tags: trunk)
07:38
add a sanity check to make sure the configure script and VERSION file are always in sync (CVS 6420) (check-in: 1b9da6d7 user: vapier tags: trunk)
2009-03-31
23:29
update configure script so it has proper VERSION in it (CVS 6419) (check-in: ce683cbd user: vapier tags: trunk)
13:16
Version 3.6.12 (CVS 6418) (check-in: 0db862a2 user: drh tags: trunk, release)
03:41
Fix compiler warnings from gcc and MSVC; Correct typo in select.c; (CVS 6417) (check-in: 76851417 user: shane tags: trunk)
02:54
Make sure a ROLLBACK that follows an incremental vacuum works. Ticket #3761. (CVS 6416) (check-in: 8c1d0c6a user: drh tags: trunk)
01:32
Remove two unused lines from pcache.c. (CVS 6415) (check-in: d5cab05c user: drh tags: trunk)
00:50
Added a test case for ticket #3672. (CVS 6414) (check-in: 7f40576d user: drh tags: trunk)
2009-03-30
18:50
Fix a case where a pointer map page was not being journalled before a file truncation that occurs as part of an incremental vacuum. (CVS 6413) (check-in: c5890935 user: danielk1977 tags: trunk)
17:19
Add a comment to the pageReinit() routine explaining why the return code from sqlite3BtreeInitPage() is ignored. Comment change only - no changes to code. (CVS 6412) (check-in: 10f605be user: drh tags: trunk)
13:53
Modify integrity-check to prevent a buffer overread when dealing with a corrupted database. (CVS 6411) (check-in: 3c9097f1 user: danielk1977 tags: trunk)
13:04
Make sure recursive calls to winOpen() preserve the pVfs pointer. Fault found while testing a mingw build in VMWare. (CVS 6410) (check-in: 18b44f0d user: drh tags: trunk)
12:56
Avoid calls to newer TCL interfaces in the test logic. This helps the TCL test harness compile without warnings and link when using older versions of the TCL library. (CVS 6409) (check-in: 1ad17637 user: drh tags: trunk)
12:42
Avoid all use of the "LL" suffix for long-long integer literals. Ticket #3759. (CVS 6408) (check-in: 7ef36935 user: drh tags: trunk)
11:59
Display a warning that the notify2-3 test sometimes fails on single-core machines. (CVS 6407) (check-in: ab7c718d user: drh tags: trunk)
07:39
Another change related to (6401) and (6402): When an attempt to unlock a file fails in os_unix.c, close all files held open waiting for the unlock event anyway. This prevents a file-descriptor leak when testing IO errors. (CVS 6406) (check-in: 50fbcdea user: danielk1977 tags: trunk)
2009-03-29
15:12
Add a comment to the doubleToInt64() routine that explains why returning minInt is in fact correct when it seems like maxInt should be returned. (CVS 6405) (check-in: 7f3be360 user: drh tags: trunk)
00:15
Turn off the debugging macros in where.c - left on by mistake in the previous check-in. (CVS 6404) (check-in: b601a575 user: drh tags: trunk)
00:13
Improvements to cost estimation for evaluating the IN operator. Ticket #3757. (CVS 6403) (check-in: 0c438e81 user: drh tags: trunk)
2009-03-28
23:47
Previous commit ((6401)) did not quite fix the problem. This should work better. (CVS 6402) (check-in: 2e7d3cc9 user: drh tags: trunk)
23:23
In the unix-backend, when simulating an I/O error on an unlock operation, still mark the connection as unlocked to avoid a future assert(). (CVS 6401) (check-in: fb35cff8 user: drh tags: trunk)
18:56
The test_async.c module must pass an unchanging filename to the underlying VFS. (CVS 6400) (check-in: d1eeee21 user: drh tags: trunk)
17:21
Fix thread related problems in test modules test_async.c and test_journal.c. (CVS 6399) (check-in: 45df27a2 user: danielk1977 tags: trunk)
15:04
Back out check-in (6380). Replace it with a proper fix to the xFullPathname method in the async VFS. (CVS 6398) (check-in: 767a7f7b user: drh tags: trunk)
10:54
The fix in (6395) was not correct. Fix #3756 a different way. (CVS 6397) (check-in: 9278f7b1 user: danielk1977 tags: trunk)
07:03
Fix a couple of test script bugs. No changes to SQLite code. (CVS 6396) (check-in: c9fa329f user: danielk1977 tags: trunk)
06:59
Fix readDbPage() so that if an SQLITE_IOERR_SHORT_READ is encountered, the page content is zeroed. Ticket #3756. (CVS 6395) (check-in: 647e3b15 user: danielk1977 tags: trunk)
2009-03-27
15:26
When "PRAGMA case_sensitive_like" is invoked, override all existing "LIKE" functions, including UTF-16 versions. (CVS 6394) (check-in: 1c6521e5 user: danielk1977 tags: trunk)
12:44
Fix another compiler warning in the test logic of tclsqlite.c. (CVS 6393) (check-in: 47ffc4dc user: drh tags: trunk)
12:32
Fix some compiler warnings in test code. (CVS 6392) (check-in: a43ecc9c user: drh tags: trunk)
09:10
Fix an incompatibility between the test_async.c backend and change (6390). (CVS 6391) (check-in: 6762625d user: danielk1977 tags: trunk)
2009-03-26
17:13
Check that the first byte of a potentially hot journal file is non-zero before beginning hot-journal rollback. Fix for #3751 and #3745. (CVS 6390) (check-in: 80241a05 user: danielk1977 tags: trunk)
14:48
Prevent the tcl test suite from throwing an exception when a threadsafe SQLite is linked against a non-threadsafe Tcl for testing. Print a warning instead. Ticket #3753. (CVS 6389) (check-in: a22e7c81 user: danielk1977 tags: trunk)
12:20
Added new tests of the scratch memory allocator for increased test coverage. (CVS 6388) (check-in: e99e28ef user: drh tags: trunk)
11:49
Ensure that the test vfs in test_journal.c zeroes sqlite3_file.pMethods if an xOpen() call fails. Similar problem to that fixed by #6384. This was a problem with test code, not SQLite itself. (CVS 6387) (check-in: 45ae830d user: danielk1977 tags: trunk)
2009-03-25
16:51
Remove an unused parameter from sqlite3DequoteExpr. Fix another unrelated and harmless compiler warning. (CVS 6386) (check-in: 8589b0fc user: drh tags: trunk)
15:43
Fix a problem preventing sqlite3_extended_errcode() from working correctly. (CVS 6385) (check-in: de469c46 user: danielk1977 tags: trunk)
14:24
When a VFS.xOpen fails, make sure the pMethods pointer is zeroed on the sqlite3_file object so that subsequent xClose() operations against that same file handler are no-ops. Bug in the test_async.c module only - not in the core library. Ticket #3744. (CVS 6384) (check-in: c32b4541 user: drh tags: trunk)
01:06
Use fdatasync() only on linux, unless -Dfdatasync=fdatasync is set at compilation time. (CVS 6383) (check-in: cbf2ca4c user: drh tags: trunk)
2009-03-24
18:42
Change OS_UNIX to SQLITE_OS_UNIX in test_thread.c. Modify notify2.test to print out its timings in addition to reporting success or failure. (CVS 6382) (check-in: 940d72d2 user: drh tags: trunk)
17:43
Get the OOM tester in async2.test working again. (CVS 6381) (check-in: f398a2d1 user: drh tags: trunk)
16:55
Adjust the lock.test and lock3.test scripts so that they work with the asynchronous VFS. (CVS 6380) (check-in: 40df926b user: drh tags: trunk)
16:27
Include sqliteInt.h in test_async.c so that the asynchronous VFS tests will run even if SQLITE_OS_UNIX is not explicitly defined. (CVS 6379) (check-in: 29b0d6a3 user: drh tags: trunk)
15:31
New assert()s added to verify that the Expr.token value is used correctly. Ticket #3743. (CVS 6378) (check-in: cf3d84ab user: drh tags: trunk)
15:08
Changes to insure that lookaside memory allocations are never used to hold schema content. Ticket #3743. (CVS 6377) (check-in: ea74d8dc user: drh tags: trunk)
04:46
Add a comment to prepare.c explaining why the lookaside buffer is disabled before sqlite3_exec() is called to parse a schema statement. No code changes. (CVS 6376) (check-in: 8ca6a665 user: danielk1977 tags: trunk)
2009-03-23
21:37
Clarify the meaning of a comment. No changes to code. (CVS 6375) (check-in: 7c2df04b user: drh tags: trunk)
17:49
Add asserts to make sure that database connection locks are held when accessing the lookaside memory allocation buffers. No defects were found. (CVS 6374) (check-in: 8a9f3e66 user: drh tags: trunk)
17:11
Fix an obscure race condition that can occur when multiple threads, shared cache and DDL statements are combined. Enhance notify2.test to test this scenario. (CVS 6373) (check-in: 92ec5975 user: danielk1977 tags: trunk)
04:33
Use the ROUND8() macro to round an integer up to the nearest multiple of 8 and ROUNDDOWN8() macro to round down to the nearest multiple of 8. This is a cosmetic change. (CVS 6372) (check-in: db1d4d2f user: danielk1977 tags: trunk)
02:34
Fix compiler warning in MSVC. (CVS 6371) (check-in: 83a4d5b3 user: shane tags: trunk)
2009-03-22
20:36
Allow the keyword INDEXED to be used as the name of a table or index or column - for backwards compatibility. (CVS 6370) (check-in: 53149c9f user: drh tags: trunk)
2009-03-21
16:19
Update comments in build.c to conform to the latest implementation. (CVS 6369) (check-in: a915e8e0 user: drh tags: trunk)
14:56
Rig the unix backend to use fdatasync() by default, without having to set the HAVE_FDATASYNC macro. Systems that do not support fdatasync() can be compiled using -Dfdatasync=fsync. (CVS 6368) (check-in: a3315627 user: drh tags: trunk)
14:41
On unix, always use fdatasync() instead of fsync() when available, even if the file size changes, since (we are told) fdatasync() will automatically flush the inode when the file size changes. (CVS 6367) (check-in: 0d6b11bc user: drh tags: trunk)
2009-03-20
15:16
Add a test to try to hit the race-condition fixed by (6363). (CVS 6366) (check-in: 4310411f user: danielk1977 tags: trunk)
14:42
Fix an assert failure introduced by (6355). (CVS 6365) (check-in: a08324d1 user: danielk1977 tags: trunk)
14:18
Make sure struct WhereClause is aligned on an 8-byte boundary. Fix for #3613, #3736. (CVS 6364) (check-in: 093a0cf4 user: danielk1977 tags: trunk)
13:15
Rename the unused MEM2 static mutex to OPEN and reuse it to serialize access to the sqlite3BtreeOpen() routine to prevent a race condition on detection of sharable caches. Ticket #3735. (CVS 6363) (check-in: 19fa5a29 user: drh tags: trunk)
10:24
Fix a problem in thread005.test cause errors on osx. (CVS 6362) (check-in: 56e6fca1 user: danielk1977 tags: trunk)
09:09
Fix a problem in loadext.test causing an error on OSX. This is not a real problem, just a case of the test script expecting a slightly different error message than the one returned. (CVS 6361) (check-in: 18680989 user: danielk1977 tags: trunk)
2009-03-19
18:51
Fix a couple of fairly obscure cases where an assert() could fail following a malloc failure. (CVS 6360) (check-in: cc0d9256 user: danielk1977 tags: trunk)
07:58
Change sqlite3_step() to return SQLITE_LOCKED if a statement cannot be re-compiled due to locks on the shared-cache schema. Also add a blocking wrapper of sqlite3_prepare_v2() to the test code. (CVS 6359) (check-in: e8be1af9 user: danielk1977 tags: trunk)
2009-03-18
18:43
Fix a crash that could occur when creating an index in shared-cache mode with lookaside enabled. (CVS 6358) (check-in: 097737e3 user: danielk1977 tags: trunk)
13:55
Modify test script backup2.test so that it works on OSX. (CVS 6357) (check-in: d82e8cd4 user: danielk1977 tags: trunk)
10:36
Add comments and testcase() macros to the fix for shared-cache schema default value problem of check-in (6353). (CVS 6356) (check-in: 05d8607d user: drh tags: trunk)
10:33
Fix some cases where executing SQL from within a user-function callback could cause problems related to statement-transactions. (CVS 6355) (check-in: a60f4191 user: danielk1977 tags: trunk)
2009-03-17
22:33
Move the rowid cache out of VdbeCursor and into BtCursor. When multiple BtCursors are open on the same table, set their rowid cache all at the same time. Ticket #3731. (CVS 6354) (check-in: 18978583 user: drh tags: trunk)
17:49
Fix a problem that could cause a crash when a shared-cache schema contains column default values. (CVS 6353) (check-in: afadddc3 user: danielk1977 tags: trunk)
15:39
Fix test script bugs in the thread002.test and thread_common.tcl. (CVS 6352) (check-in: d137e841 user: drh tags: trunk)
2009-03-16
17:07
Make sure the finished() array in thread005.test is cleared before the script starts. (CVS 6351) (check-in: ddadc25d user: drh tags: trunk)
14:48
Modify quick.test to support the QUICKTEST_INCLUDE environment variable, which can be used to override the built-in EXCLUDE list. (CVS 6350) (check-in: fdfe22f0 user: danielk1977 tags: trunk)
13:37
Additional hyperlinks in the sqlite3_unlock_notify() documentation. (CVS 6349) (check-in: 4dae5f6e user: drh tags: trunk)
13:19
Add the sqlite3_unlock_notify() API. (CVS 6348) (check-in: b649a6cc user: danielk1977 tags: trunk)
12:30
Bump the version number to 3.6.12. (CVS 6347) (check-in: 2fcccca3 user: drh tags: trunk)
10:59
Remove surplus white space from shell.c. Use strlen30() instead of strlen(). (CVS 6346) (check-in: 324a1aff user: drh tags: trunk)
2009-03-14
08:37
Fix for #3719. When synthesizing a CREATE TABLE statement as as result of a "CREATE TABLE AS", quote the column type names unless they are simple identifiers or simple identifiers followed by one or two dimensions (e.g. "VARCHAR(10)"). (CVS 6345) (check-in: 7c6437ef user: danielk1977 tags: trunk)
2009-03-13
15:32
Do not overrun a buffer in the genfkey code (now part of shell.c). Fix for #3722. (CVS 6344) (check-in: 943b11fb user: danielk1977 tags: trunk)
2009-03-12
15:43
Avoid fts3 crash on (MATCH '""') expressions. Ticket #3717. (CVS 6343) (check-in: 03679857 user: danielk1977 tags: trunk)
14:43
Make calls to sqlite3BtreeRollbackStmt() no-ops when passed a Btree* handle that does not have an open statement transaction. Ticket #3718. (CVS 6342) (check-in: a1bb1aef user: danielk1977 tags: trunk)
2009-03-05
14:59
Begin purging dirty pages from the cache once 90% of the cache is dirty (insteadof waiting until it is 100% dirty). This improves performance in some circumstances by effectively reserving 10% of the configured page-cache for frequently reused read-only pages. (CVS 6341) (check-in: 823fe7f5 user: danielk1977 tags: trunk)
14:53
Comment out a recently added assert statement that is failing. (CVS 6340) (check-in: d0b2015f user: danielk1977 tags: trunk)
05:54
Implemented winSectorSize(); Other changes for consistency. os_win.c. Ticket #2931. (CVS 6339) (check-in: 68abcb27 user: shane tags: trunk)
04:27
Changes to cleanup and improve the consistency of tests for large file support in bigfile.test. (CVS 6338) (check-in: 3dbdf680 user: shane tags: trunk)
04:23
Added some asserts and a check for a null pointer dereference. (CVS 6337) (check-in: 6b0cabd0 user: shane tags: trunk)
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) (check-in: 6404afa0 user: shane tags: trunk)
03:48
Removed compiler warnings from MSVC builds. Ticket #3701. (CVS 6335) (check-in: 5477833e user: shane tags: trunk)
2009-03-02
17:18
Converted EXPR_*SIZE macros to use offsetof() to avoid MSVC compiler warnings. (CVS 6334) (check-in: 5e8e16f7 user: shane tags: trunk)
14:24
Fix the SQLITE_ENABLE_UPDATE_DELETE_LIMIT option for the new Expr compression logic of check-in (6305). Bug discovered during regression testing. (CVS 6333) (check-in: 91969eda user: drh tags: trunk)
01:22
Fix a bug in the GROUP BY alias name resolution. The bug was by check-in (6305). Discovered by regression test on 64-bit linux. Test cases added so that the problems is detected on 32-bit systems. (CVS 6332) (check-in: fa000850 user: drh tags: trunk)
2009-03-01
22:29
Suppress some compiler warnings (where possible). Ticket #3696. (CVS 6331) (check-in: a2373e54 user: drh tags: trunk)
19:42
Fix a critical bug in the VDBE opcode array resizer introduced by check-in (6307). Bug detected by regression testing. (CVS 6330) (check-in: ec3b18ac user: drh tags: trunk)
2009-02-28
10:47
Instead of linking temporary triggers on non-temporary tables into the Table.pTrigger list, search the temp schema for them on demand. Fix for #3688. (CVS 6329) (check-in: 3befe1ef user: danielk1977 tags: trunk)
2009-02-26
07:15
In sqlite3_table_column_metadata(), hold the mutex on all attached BtShared objects while accessing schema objects. Fix for #3679. (CVS 6328) (check-in: d197afd6 user: danielk1977 tags: trunk)
2009-02-25
19:07
Move the new genfkey shell command out from within #ifdef _WIN32_ (CVS 6327) (check-in: 48ee0e47 user: drh tags: trunk)
15:43
Remove genfkey.c. Change genfkey.README to talk about the new shell dot-command, not the old standalone genfkey program. (CVS 6326) (check-in: 36d69966 user: danielk1977 tags: trunk)
15:22
Add the 'genfkey' functionality to the sqlite3 shell. Accessed using a new dot-command - ".genfkey". (CVS 6325) (check-in: 0a59fb28 user: danielk1977 tags: trunk)
08:56
Minor changes and coverge tests for "SELECT count(*)" optimization. (CVS 6324) (check-in: a3695b98 user: danielk1977 tags: trunk)
2009-02-24
19:21
Additional commands and another procedure name changes for clarity of presentation. No logic changes. (CVS 6323) (check-in: 91d9d51e user: drh tags: trunk)
18:57
Changes to comments and functions/procedure names for clarification. No changes to logic. (CVS 6322) (check-in: b99c1815 user: drh tags: trunk)
18:40
Remove old declaration of sqlite3_pending_byte (which was used by test code). It has been replaced by sqlite3PendingByte. Ticket #3677. (CVS 6321) (check-in: 44f0162e user: danielk1977 tags: trunk)
18:33
Fixes and some extra test cases for count(*) optimization. (CVS 6320) (check-in: 3f0baa1b user: danielk1977 tags: trunk)
16:18
Enhanced comments on table locking logic as it relates to preparing new statements. Added assert() and testcase() but no other changes to code. (CVS 6319) (check-in: 4a12f5b8 user: drh tags: trunk)
10:48
Add test file test/count.test for testing "SELECT count(*)" statements. It is not properly populated yet. (CVS 6318) (check-in: a195d74f user: danielk1977 tags: trunk)
10:14
Reverse commit (6315) for now. (CVS 6317) (check-in: 0e7c369c user: danielk1977 tags: trunk)
10:01
Optimize queries of the form "SELECT count(*) FROM <tbl>" by adding a sqlite3BtreeCount() interface to the btree layer. (CVS 6316) (check-in: d4aa6593 user: danielk1977 tags: trunk)
2009-02-23
17:33
Scan an index instead of a table for "SELECT count(*) FROM <tbl>" queries. Because an index is usually smaller than a table on disk, this saves some IO. (CVS 6315) (check-in: 294ba6f7 user: danielk1977 tags: trunk)
16:52
Add the reverse_unordered_selects pragma. (CVS 6314) (check-in: bc078e00 user: drh tags: trunk)
14:42
Ensure the return value of sqlite3_errmsg16() is aligned on a 2-byte boundary. Ticket #3665. (CVS 6313) (check-in: 9b8acf83 user: danielk1977 tags: trunk)
2009-02-21
22:38
The sqlite3.def file is automatically generated and is not suppose to be part of the source code repository. So it is hereby removed. Ticket #3671. (CVS 6312) (check-in: 5dcda154 user: drh tags: trunk)
2009-02-20
22:27
unbreak Autoconf-based build procedure by added missing backup.lo to the list of library objects (CVS 6311) (check-in: 94945801 user: rse tags: trunk)
10:58
Instead of using SetNumColumns, specify the number of columns in a table or index using the P4 argument. (CVS 6310) (check-in: e43ed649 user: danielk1977 tags: trunk)
03:55
Add a count parameter to the OP_Variable opcode and use it to simplify prepared statements that copy consecutive unnamed parameters into consecutive registers (a common case). (CVS 6309) (check-in: 48b77b04 user: drh tags: trunk)
03:02
Add the OP_HaltIfNull opcode and use it to simplify prepared statements for INSERTs and UPDATEs of tables with NOT NULL columns. (CVS 6308) (check-in: feccad8d user: drh tags: trunk)
01:28
Reuse space left-over opcode space at the end of the VDBE opcode array to store memory cells, VDBE cursors, and other content needed by the VDBE. This reduces the memory required by a prepared statement. (CVS 6307) (check-in: 58a18092 user: drh tags: trunk)
2009-02-19
20:50
Remove code in malloc.c that was already commented out using #if 0. (CVS 6306) (check-in: e1ad757e user: drh tags: trunk)
14:39
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305) (check-in: d9f6ffbc user: danielk1977 tags: trunk)
2009-02-18
20:31
Make sure the auto_vacuum=INCREMENTAL setting is preserved across a VACUUM. Ticket #3663. (CVS 6304) (check-in: ded04f12 user: drh tags: trunk)
18:37
Move the text of C-API requirements out of the sqlite.h.in source file and into separate files in the "docsrc" CM system. Comment changes only - no changes to code. (CVS 6303) (check-in: 419eb48b user: drh tags: trunk)
12:25
Fix the amalgamation builder to mark sqlite3PagerBackupPtr as private. Ticket #3662. (CVS 6302) (check-in: fb281950 user: drh tags: trunk)
04:35
run autoconf so the updated version is in the configure script (CVS 6301) (check-in: edbb3586 user: vapier tags: trunk)
04:34
break libsqlite3.la install step out so the tcl install step can depend on it as well (CVS 6300) (check-in: 0998c554 user: vapier tags: trunk)
00:00
Version 3.6.11 (CVS 6299) (check-in: 6abd630c user: drh tags: trunk, release)
2009-02-17
18:37
Add tests to double-check that nothing within SQLite ever tries to allocate amounts of memory that are close to the maximum signed integer, leading to an integer overflow within malloc(). This is not currently a problem. The extra tests just insure it never becomes a problem. (CVS 6298) (check-in: f6ba7bb9 user: drh tags: trunk)
17:56
Initialize an uninitialized buffer to silence a valgrind warning during a VACUUM operation. (CVS 6297) (check-in: 8c61968b user: danielk1977 tags: trunk)
16:29
Allow sqlite3_shutdown() to be called by a process before sqlite3_initialize() is. Prior to this commit such a call could segfault. (CVS 6296) (check-in: 79431c58 user: danielk1977 tags: trunk)
16:17
Make sure result variables are initialized or unused following a failure of the xFullPathname VFS interface. Problem detected by valgrind. (CVS 6295) (check-in: 59a47551 user: drh tags: trunk)
2009-02-16
17:55
Changes to remove some compiler warnings from MSVC. (CVS 6294) (check-in: 68f15442 user: shane tags: trunk)
16:23
Fix a compiler warning in backup.c. (CVS 6293) (check-in: 82222fbf user: drh tags: trunk)
2009-02-13
16:59
Make sure OOM errors in the ANALYSIS loader get reported back out to high-level layers. Strange behavior can result otherwise. (CVS 6292) (check-in: 88a6355c user: drh tags: trunk)
03:43
Correctly handle attempts to add a UNIQUE or PRIMARY KEY column using the ALTER TABLE statement. Ticket #3651. (CVS 6291) (check-in: dd179ff2 user: drh tags: trunk)
2009-02-12
17:07
Add additional cross-references from API documentation to other documents. Comment changes only; no changes to code. (CVS 6290) (check-in: 97203a0a user: drh tags: trunk)
17:06
Update thread tests to clear the sqlite_open_file_count counter at the end. This counter is not threadsafe and can end up with an invalid value at the end of the thread tests. (CVS 6289) (check-in: 8c4d71a1 user: drh tags: trunk)
17:01
Fix some edge cases with backing up databases that are exactly PENDING_BYTE bytes in size, or just slightly larger. (CVS 6288) (check-in: 2fc450e8 user: danielk1977 tags: trunk)
09:36
Modify lock.test to account for "PRAGMA lock_status" returning "unknown" for in-memory databases. (CVS 6287) (check-in: 9a6e558b user: danielk1977 tags: trunk)
09:11
Fix a case where during a rollback triggered by an IO or malloc error an unjournalled region of the database could be written to (with it's original data). This was causing an assert in test_journal.c to fail. Add a test case in ioerr2.test to trigger this case. (CVS 6286) (check-in: 315a6692 user: danielk1977 tags: trunk)
2009-02-11
16:06
Updated for Windows compatibility. Test scripts only. (CVS 6285) (check-in: 2522ad1d user: shane tags: trunk)
15:23
Continuing documentation refinements. Comment changes only. (CVS 6284) (check-in: 83e83084 user: drh tags: trunk)
15:11
Fix the backup.test script so that it works regardless of the value of SQLITE_TEMP_STORE and the initial contents of the file-system. (CVS 6283) (check-in: da660ea7 user: danielk1977 tags: trunk)
15:04
Add hyperlinks from sqlite3_limit() documention to the limits.html page. Comment changes only - no changes to code. (CVS 6282) (check-in: f0189ec8 user: drh tags: trunk)
14:27
Fix the crashtest infrastructure so that it doesn't trigger the "don't write to the locking region" assert in os_unix.c. (CVS 6281) (check-in: b7fd4615 user: danielk1977 tags: trunk)
07:38
Modify the test_journal.c code to (1) account for the backup code writing to parts of the pending-byte page when changing a databases page-size, and (2) to avoid reading from the pending-byte page and triggering the assert in os_unix.c. Changes to test code only. (CVS 6280) (check-in: 48796216 user: danielk1977 tags: trunk)
05:18
In test_mutex.c, zero the global structure staticly instead of in Sqlitetest_mutex_Init(). This is because Sqlitetest_mutex_Init() is now called by each thread during thread tests ((6193)). Test code changes only. (CVS 6279) (check-in: 8b318b93 user: danielk1977 tags: trunk)
2009-02-10
18:54
For the "onefile" demo, pass SQLITE_OPEN_TEMP_DB instead of MAIN_DB to the OS layer when opening the single file. This is to work around the assert() in os_unix.c that tests that the locking region is not written to. (CVS 6278) (check-in: 2da076a2 user: danielk1977 tags: trunk)
14:45
Reduce the number of iterations in one of the savepoint4.test crash tests. (CVS 6277) (check-in: fafb07b8 user: danielk1977 tags: trunk)
14:28
Prevent code in test6.c from reading the 512 byte locking region (the PENDING_BYTE page) of a database file. Doing so triggers an assert failure in os_unix.c. (CVS 6276) (check-in: 2a6a4316 user: danielk1977 tags: trunk)
13:41
Create links from backup API documentation to the backup application note. Comment changes only - no changes to code. (CVS 6275) (check-in: 85de23fb user: drh tags: trunk)
11:17
Reenable triggering vdbe tracing by creating file-system entries. Add a (redundant) test that modifying the temp schema expires all prepared statements. (CVS 6274) (check-in: f6590dac user: danielk1977 tags: trunk)
10:44
Do not always open a transaction on the temp database when writing to the main or another attached database. (CVS 6273) (check-in: f76b0b81 user: danielk1977 tags: trunk)
05:45
Fix a bug in test file misc7.test. No code changes. (CVS 6272) (check-in: d919d2a1 user: danielk1977 tags: trunk)
2009-02-09
18:55
Fix a problem in backup.c causing OsTruncate() to be called with an argument larger than the current file-size. (CVS 6271) (check-in: b34bde80 user: danielk1977 tags: trunk)
17:34
Add assert() statements to os_unix.c which fire if there is a read or write for the locking region of a database file. (CVS 6270) (check-in: 93e792ff user: drh tags: trunk)
13:19
Better error message when DISTINCT is used on an aggregate function that takes two or more arguments. Ticket #3641. (CVS 6269) (check-in: e20bf384 user: drh tags: trunk)
05:32
Ignore the return structure of and F_GETLK fcntl() call on djgpp. Fix for #3642. (CVS 6268) (check-in: 8227af34 user: danielk1977 tags: trunk)
05:18
Attempt to reproduce ticket #3643. No luck yet. (CVS 6267) (check-in: 8f2f98d2 user: danielk1977 tags: trunk)
2009-02-06
05:59
Changes to the backup API: (1) if a negative number is passed as the second argument to backup_step(), this is interpreted as "copy all remaining pages" and (2) if backup_finish() is called after backup_step() fails with a BUSY or LOCKED error, then this error is also returned by backup_finish() (same handling as for other errors encountered by backup_step()). (CVS 6266) (check-in: 9b8c8b18 user: danielk1977 tags: trunk)
2009-02-05
17:00
Fix a test case that was still using the old pending_byte mechanism. (CVS 6265) (check-in: 08ec4f2c user: drh tags: trunk)
16:53
Fix the declaration of sqlite3PendingByte so that it works with the amalgamation. (CVS 6264) (check-in: 193c871f user: drh tags: trunk)
16:31
Make the pending byte adjustable via sqlite3_test_control() on all builds, not just on test builds. (CVS 6263) (check-in: e8f192e2 user: drh tags: trunk)
03:16
Fixed error detection in winTrucate() in os_win.c. Windows version only. Ticket #3640. (CVS 6262) (check-in: 82e03f1b user: shane tags: trunk)
03:00
Improved overrun detection in mem2.c (SQLITE_MEMDEBUG). Previously was only checking up to 3 extra bytes allocated due to rounding. (CVS 6261) (check-in: a6fe3d6b user: shane tags: trunk)
2009-02-04
22:46
Add "backup" and "restore" methods to the TCL interfaces and test cases to exercise those methods. (CVS 6260) (check-in: e420a3ce user: drh tags: trunk)
20:55
Add ".backup" and ".restore" commands to the CLI - implemented using the new backup API. (CVS 6259) (check-in: 003e1d62 user: drh tags: trunk)
20:08
Increase the version number to 3.6.11. (CVS 6258) (check-in: 0882a028 user: drh tags: trunk)
19:16
If the truncate operation fails in journalmode=TRUNCATE, do not fall back to overwriting the journal header with zeros. Simply fail the operation. (CVS 6257) (check-in: d4af60e5 user: drh tags: trunk)
17:40
Simplify wording of backup API error message. Decapitalize some other error messages. (CVS 6256) (check-in: f92405af user: drh tags: trunk)
16:56
The sqlite3_backup_init() interface must lock the destination in case it needs to change the error message. (CVS 6255) (check-in: 572378d3 user: drh tags: trunk)
15:27
Fix a bug in test_malloc.c whereby running multi-threaded test cases could cause subsequent OOM tests to fail. (CVS 6254) (check-in: 03ea9e59 user: danielk1977 tags: trunk)
11:57
Ensure that thread001.test and thread002.test reset the global shared-cache-enabled setting before they finish. (CVS 6253) (check-in: 416288a9 user: danielk1977 tags: trunk)
10:09
Do not attempt to use the sub-journal file descriptor if it is not opened (as in journal_mode=off mode). Ticket #3636. (CVS 6252) (check-in: 20bd7605 user: danielk1977 tags: trunk)
08:17
Fix a bug in malloc.test causing the exclusive permutation to fail. Changes to test code only. (CVS 6251) (check-in: 72745bde user: danielk1977 tags: trunk)
03:59
Changes to completely remove all floating point ops if SQLITE_OMIT_FLOATING_POINT defined. Note that w/o fp, date/time, round, nan, etc. are all gone or limited in functionality. Updated some of the test scripts to support missing fp and 64-bit functionality. Ticket #3029. (CVS 6250) (check-in: 5cef4000 user: shane tags: trunk)
01:49
Remove compiler warnings under MSVC. (CVS 6249) (check-in: 6301f08a user: shane tags: trunk)
2009-02-03
22:51
Correction to check-ins (6246) and (6247): The backup object might not hold a valid destination connection pointer. Also, do not reset the page cache when establishing a read-lock while there is a persistent or truncated journal, only if there is a journal that really needs to rollback. Otherwise backups always reset whenever the source database file is read. (CVS 6248) (check-in: 7f827ba9 user: drh tags: trunk)
22:17
A backup must clear the internal schema of the destination database so that the schema will be reloaded for the next sqlite3_prepare() (CVS 6247) (check-in: 76f23a43 user: drh tags: trunk)
21:13
Must hold mutex on the destination during backups. Add documentation to warn programmers that attempting to use the destination connection during a backup can lead to deadlock. (CVS 6246) (check-in: 5f6c06b9 user: drh tags: trunk)
19:55
Fixed postToParent() return type (Tcl_ThreadCreateType) in test_thread.c to compile with MSVC. Removed a few compiler warnings. Test harness change only. (CVS 6245) (check-in: e9475aba user: shane tags: trunk)
19:52
Fix buffer size in md5_cmd() in test_md5.c. Test harness change only. (CVS 6244) (check-in: c1e15717 user: shane tags: trunk)
18:47
More adjustments to the backup API documentation. No changes to code. (CVS 6243) (check-in: ca650879 user: drh tags: trunk)
18:25
Tweaks to the backup API documentation contained in comments. No changes to code. (CVS 6242) (check-in: 6298bcca user: drh tags: trunk)
16:51
Commit first version of the 'backup' feature. (CVS 6241) (check-in: 663479b4 user: danielk1977 tags: trunk)
16:25
Fix the sqlite3_mprintf_long test command (added by check-in (6224) in order to address ticket #3621) so that it works on systems with sizeof(int)==4 and sizeof(long)==8. (CVS 6240) (check-in: 2e45c2a8 user: drh tags: trunk)
15:50
Remove several compiler warnings. (CVS 6239) (check-in: 85e9196d user: drh tags: trunk)
15:39
Remove the text of the sqlite3VdbeMemSanity() routine, which was already commented out. (CVS 6238) (check-in: a3c26077 user: drh tags: trunk)
15:27
Check at the write() call to work around the msdos bug in OSX actually succeeds and throw an error if it does not. #ifdef out the work-around for all platforms other than OSX. Ticket #3633. (CVS 6237) (check-in: b054b569 user: drh tags: trunk)
13:51
Add a special rule to the amalgamation generator to deal with the sqlite3OsDlSym function. Ticket #3631. (CVS 6236) (check-in: 876f874c user: drh tags: trunk)
13:19
Fix a problem in check-in (6226) which could cause an assertion fault following a malloc failure. The prior check-in was for ticket #3624. (CVS 6235) (check-in: 1ffe44e9 user: drh tags: trunk)
13:10
Check-in (6230) introduced a bugs in SUBSTR() which was caught by the fuzz tester. Fixed by this check-in. Related to ticket #3628. (CVS 6234) (check-in: cd2e7f6c user: drh tags: trunk)
2009-02-02
21:57
Make group_concat() a 1- or 2-value function, as the documentation says it should be. Use the md5sum() function to verify ticket #3179, not group_concat(). This undoes the ill-advised group_concat() change of check-in (5233). (CVS 6233) (check-in: f2ae82c4 user: drh tags: trunk)
18:03
Omit the TEMP keyword from the schema of TEMP tables created using CREATE TEMP TABLE AS SELECT ..... Ticket #3630. (CVS 6232) (check-in: 3b0a2554 user: drh tags: trunk)
17:30
Minor simplifications to SQL function implementations. (CVS 6231) (check-in: 92e5c27f user: drh tags: trunk)
16:32
Update the SUBSTR function so that works consistently when the 2nd parameter is 0. Ticket #3628. (CVS 6230) (check-in: 5fc125d3 user: drh tags: trunk)
01:50
Restrict the RANDOM() function to have zero arguments. Ticket #3627. (CVS 6229) (check-in: b8b546b6 user: drh tags: trunk)
2009-02-01
19:42
Fix SUBSTR() so that it returns NULL if any argument is NULL. Ticket #3626. (CVS 6228) (check-in: 779fce82 user: drh tags: trunk)
19:23
Fix the SUBSTR() function so that when the 3rd argument is negative, it counts backwards from the selected start point. Ticket #3625. (CVS 6227) (check-in: 2217339b user: drh tags: trunk)
18:08
Change the replace() function to return a copy of its first argument when the 2nd argument is an empty string. Ticket #3624. (CVS 6226) (check-in: ffebf10f user: drh tags: trunk)
00:29
Adjust comments in vdbe.c to use OP_MakeRecord instead of the obsolete OP_MakeIdxRec. Ticket #3619. (CVS 6225) (check-in: 0d2abbbf user: drh tags: trunk)
00:21
Add a new test command, sqlite3_mprintf_long, for testing the behavior of "long integer" printf formatting. Ticket #3621. (CVS 6224) (check-in: 3ba1a17b user: drh tags: trunk)
00:00
Make the TO keyword available even if SQLITE_OMIT_ALTERTABLE is defined. Ticket #3622. (CVS 6223) (check-in: 3890985c user: drh tags: trunk)
2009-01-31
22:28
Better error message when coalesce() has too few arguments. Ticket #3623. (CVS 6222) (check-in: 9cd43c82 user: drh tags: trunk)
14:54
Avoid a segfault when running vacuum on an in-memory database. Ticket #3620. (CVS 6221) (check-in: 407830c6 user: danielk1977 tags: trunk)
2009-01-30
17:27
Fix a round-off error when moving dates by negative modifier amounts. Ticket #3618. Enhance the "NNN years" modifier to accept fractional years. (CVS 6220) (check-in: 86be908c user: drh tags: trunk)
16:09
Made code to remove unused parameter warning part of the conditional. Ticket #3610. (CVS 6219) (check-in: c5dca114 user: shane tags: trunk)
06:11
Changes to setupLookaside() in main.c to better handle lookaside buffer configurations of zero-size. Ticket #3616. (CVS 6218) (check-in: 0a2c7f74 user: shane tags: trunk)
05:59
Implemented the SQLITE_LAST_ERRNO op in the xFileControl() method of os_win.c. Ticket #3615. (CVS 6217) (check-in: 9ea871f3 user: shane tags: trunk)
05:47
In test case incrvacuum-15.1 close both db handles (db and db2) before attempting to delete test.db. Ticket #3614. (CVS 6216) (check-in: e764a7c5 user: shane tags: trunk)
05:40
Minor changes to remove a few MSVC compiler warnings at /W3. Ticket #3610. (CVS 6215) (check-in: c74c78e4 user: shane tags: trunk)
2009-01-29
19:27
Add test cases to make sure that keywords that we say can be used as identifiers really can be used as identifiers. These tests were inspired by ticket #3612, but they do not directly address ticket #3612. (CVS 6214) (check-in: 6041ca87 user: drh tags: trunk)
02:54
add a cvsignore file (CVS 6213) (check-in: 68c8cdd7 user: vapier tags: trunk)
2009-01-28
20:21
Fix a segfault that can occur when attempting to insert into a corrupt database file. Need a test case. (CVS 6212) (check-in: 68957cf0 user: drh tags: trunk)
04:46
regenerate autotools (CVS 6211) (check-in: 813a3c96 user: vapier tags: trunk)
04:46
unify TCLLIBDIR handling with libtclsqlite3.so and use libtool to install it rather than custom tclinstaller.tcl ... this integrates better with autotools and avoids relinking issues (RPATH pointing to builddir) (CVS 6210) (check-in: 3a049ca7 user: vapier tags: trunk)
02:55
Add testcase() macros for coverage in date.c. (CVS 6209) (check-in: 90b42eba user: drh tags: trunk)
2009-01-26
21:43
use AC_MSG_xxx funcs rather than `echo` (CVS 6208) (check-in: ed08025a user: vapier tags: trunk)
21:39
(#3449) search for tclConfig.sh first by asking tclsh itself where it is (CVS 6207) (check-in: ff2912dc user: vapier tags: trunk)
21:25
(#1428) installed shared libs with exec perms (CVS 6206) (check-in: 3f2a3414 user: vapier tags: trunk)
20:59
(#3583) add a rule for sqlite3.pc in case the .in file is updated (CVS 6205) (check-in: 4d03b693 user: vapier tags: trunk)
2009-01-24
15:23
Remove obsolete files from the tools subfolder. (CVS 6204) (check-in: d7456080 user: drh tags: trunk)
11:30
Fix some minor compiler warnings. Added sqlite3Isalpha() for use in the soundex() function. (CVS 6203) (check-in: bfc71edc user: drh tags: trunk)
09:56
Remove incorrect ALWAYS macro associated with empty IN() sets. Ticket #3602. (CVS 6202) (check-in: f3c09a0c user: danielk1977 tags: trunk)
2009-01-23
16:45
Optimization: When loading a new page into the cache, avoid redundant memset() calls to zero it. (CVS 6201) (check-in: 9c0b9f88 user: danielk1977 tags: trunk)
2009-01-22
23:04
Fix the VACUUM command so that it does not commit a transaction when it is mistakenly run within a transaction - it should leave the transaction open. (CVS 6200) (check-in: 75cc709b user: drh tags: trunk)
17:12
Silence a C++ builder warning by writing "if( (rc = function())!=SQLITE_OK )" instead of "if( (rc = function()) )" in two places in pager.c. Ticket #3605. (CVS 6199) (check-in: 78ae96de user: danielk1977 tags: trunk)
2009-01-21
17:45
Add a comment to fts3_tokenizer.h to make it clear how the xNext() method is supposed to set its output variables. Make sure the output variables of xNext() are only used if SQLITE_OK is returned. Ticket #3604. (CVS 6198) (check-in: 5b3c075f user: danielk1977 tags: trunk)
2009-01-20
17:06
Big change to make pager.c easier to follow. Unused variables removed, comments improved, etc. (CVS 6197) (check-in: 12f7346c user: danielk1977 tags: trunk)
16:53
When not compiling for an EBCDIC system, use built-in alternatives to the tolowe r(), toupper() and other ctype.h library functions. Ticket #3597. (CVS 6196) (check-in: 1041abd6 user: danielk1977 tags: trunk)
2009-01-19
20:49
Make sure the *pzErrMsg return from sqlite3_get_table() is aways zeroed. Ticket #3598. (CVS 6195) (check-in: 7035c35d user: drh tags: trunk)
18:18
Fix the --enable-tempstore option on the configure script. Ticket #3599 (CVS 6194) (check-in: c2eabb99 user: drh tags: trunk)
17:40
Make sure mutexes are fully enabled for thread001.test. Take steps to ensure that the thread tests run during regression testing. (CVS 6193) (check-in: 6242f113 user: drh tags: trunk)
2009-01-17
16:59
Fix a bug that was preventing SQLite from releasing locks properly under obscure circumstances. (CVS 6192) (check-in: 502c66df user: danielk1977 tags: trunk)
15:53
Back out the Makefile.in changes from check-in (6181) because of reports (ticket #3594) that they do not work on NetBSD. Separately, documentation is updated to make clear that configure and Makefile.in are unsupported. (CVS 6191) (check-in: 2d79aaab user: drh tags: trunk)
2009-01-16
23:47
Remove a harmless UMR that occurs inside some debugging code. (CVS 6190) (check-in: 191c399f user: drh tags: trunk)
16:40
Fix a change-counter bug similar to #3584. This one is much more obscure though, requiring a transient IO or malloc error to occur while running in exclusive mode. (CVS 6189) (check-in: 9f07d2d9 user: danielk1977 tags: trunk)
16:23
Revert (6187). (CVS 6188) (check-in: a353c1ab user: danielk1977 tags: trunk)
15:21
This commit is an error. Reverted by (6188). (CVS 6187) (check-in: aa67fd0c user: danielk1977 tags: trunk)
11:04
Allow recently added keywords 'savepoint' and 'release' to be used as database object names. Just as they could be prior to 3.6.8. Ticket #3590. (CVS 6186) (check-in: 54ab8326 user: danielk1977 tags: trunk)
2009-01-15
17:40
Treat "or" as an ANSI-C keyword, even though it is not. Ticket #3588. (CVS 6185) (check-in: ed4e308c user: drh tags: trunk)
17:04
Version 3.6.10 (CVS 6184) (check-in: 21b720cc user: drh tags: trunk, release, version-3.6.10)
15:23
Disable test case select2-2.0.3. This was a timing test that sometimes fails due to CPU contention with other processes on the same host. (CVS 6183) (check-in: ffdf91fe user: drh tags: trunk)
04:30
Avoid using ENOTSUP on systems that do not define that symbol. Ticket #3512. (CVS 6182) (check-in: fcb6c677 user: drh tags: trunk)
2009-01-14
23:38
Make some changes requested by Fedora. (CVS 6181) (check-in: 7bc08bc7 user: drh tags: trunk)
23:17
Fix the shell so that the ".schema" command works regardless of the pragma settings. Ticket #3585. (CVS 6180) (check-in: 6f6b638e user: drh tags: trunk)
23:03
Add asserts to detect if a transaction commits without first incrementing the transaction counter. These asserts are intended to prevent future problems similar to ticket #3584. (CVS 6179) (check-in: b676ccfd user: drh tags: trunk)
18:59
Fix typos in comments in FTS3 implementation. (CVS 6178) (check-in: b0f06663 user: drh tags: trunk)
18:59
Increment the version number in preparation for yet another release. (CVS 6177) (check-in: dce60ea7 user: drh tags: trunk)
17:45
Fix a problem with committing a transaction while there are other active statements. Sometimes, the database change counter was not being updated. (CVS 6176) (check-in: b7d2a477 user: danielk1977 tags: trunk)
04:09
Version 3.6.9 (CVS 6175) (check-in: b6ce8199 user: drh tags: trunk, release)
01:10
Here is the test case to prove that ticket #3581 is fixed. (CVS 6174) (check-in: f5f5ef64 user: drh tags: trunk)
00:55
Make sure the OR-clause optimizer takes the cost of sorting into account. Reset the rowid cache on the OP_Rewind and OP_Last opcodes. Bump the version number so that we can do an emergency release. Ticket #3581. (CVS 6173) (check-in: d28b5820 user: drh tags: trunk)
2009-01-13
20:14
Updates to comments as suggested by tickets #3578 and #3579. (CVS 6172) (check-in: b5927213 user: drh tags: trunk)
16:03
If the journal file is open when unlocking the database, close it just before unlocking the database file instead of just after. This may fix #3572. (CVS 6171) (check-in: 36fe9a7a user: danielk1977 tags: trunk)
2009-01-12
15:46
Version 3.6.8 (CVS 6170) (check-in: 8ca0b7c1 user: drh tags: trunk, release)
14:01
Only run tests that depend on SQLITE_PREFER_PROXY_LOCKING builds when said symbol is set. (CVS 6169) (check-in: 5d88f8be user: danielk1977 tags: trunk)
2009-01-11
18:24
Sometimes a single byte is written to the main database file. Make sure that journaltest knows this. (CVS 6168) (check-in: e0af5a43 user: drh tags: trunk)
17:00
Fix an assert() so that it works correctly with SQLITE_TEMP_STORE=3. (CVS 6167) (check-in: fd2bbcf8 user: drh tags: trunk)
05:54
Fix jrnlmode.test so that it does not run tests involving in-memory journals during the "journaltest" permutation. (CVS 6166) (check-in: b47ddefc user: danielk1977 tags: trunk)
00:44
The crash8.test depends on auto_vacuum being off. Make sure that is the case. (CVS 6165) (check-in: 3538d2a9 user: drh tags: trunk)
00:42
In io.test, reset the connection after manually deleting the journal file, so that the connection does not continue to use the old deleted journal file. (CVS 6164) (check-in: 1e79f4f9 user: drh tags: trunk)
00:18
Adjust savepoint.test so that it can deal with SQLITE_TEMP_STORE=3. (CVS 6163) (check-in: 3cb910f0 user: drh tags: trunk)
2009-01-10
18:51
Do not run crash8.test as part of the "journaltest" permutation. crash8.test uses "PRAGMA synchronous=off", which is incompatible with journaltest. (CVS 6162) (check-in: 5f184da6 user: danielk1977 tags: trunk)
17:57
Remove the unused Pager.alwaysRollback flag. Fix a couple of comments in pager.c. (CVS 6161) (check-in: 8f0672af user: danielk1977 tags: trunk)
17:02
Remove an faulty assertion inserted a few days ago. (CVS 6160) (check-in: 495f017e user: drh tags: trunk)
16:15
When compiled with SQLITE_DEBUG (in other words, when assert() is enabled) the ALWAYS and NEVER macros will throw an assertion if their arguments are not true or false, respectively. (CVS 6159) (check-in: 64a8dcd8 user: drh tags: trunk)
16:15
Improve coverage of pager.c. (CVS 6158) (check-in: 855c4093 user: danielk1977 tags: trunk)
15:34
Fix a bug caused by overzealous code test coverage simplifications. Bug found by TH3. (CVS 6157) (check-in: 3da55787 user: drh tags: trunk)
13:24
Remove some unused code from expr.c in order to increase test coverage. (CVS 6156) (check-in: 2cbea64f user: drh tags: trunk)
11:13
Fix a bug in the previous commit - use SQL comments instead of Tcl comments in SQL blocks. (CVS 6155) (check-in: 3d7a8de2 user: danielk1977 tags: trunk)
11:10
Add a malloc failure test case that covers a few previously untested lines in pager.c (CVS 6154) (check-in: 000aedb0 user: danielk1977 tags: trunk)
2009-01-09
21:41
Coverage improvements in pragma.c. Change the __DARWIN__ macro to __APPLE__, which is available by default on Leopard. (CVS 6153) (check-in: 64c56226 user: drh tags: trunk)
17:11
Increase pager.c coverage a bit. Fix an assert failure that can occur following a "PRAGMA omit_readlock" command on a read-only database. (CVS 6152) (check-in: 0f3f9011 user: danielk1977 tags: trunk)
14:29
Fix two problems in test instrumentation that show up on some fulltests. (CVS 6151) (check-in: c9179617 user: drh tags: trunk)
14:11
Simplifications to btree.c to improve test coverage. (CVS 6150) (check-in: ac84f106 user: drh tags: trunk)
10:49
Add a couple of coverage tests. (CVS 6149) (check-in: 6a64109d user: danielk1977 tags: trunk)
02:49
More coverage improvements. (CVS 6148) (check-in: 6e171c0a user: drh tags: trunk)
01:12
Increased test coverage. (CVS 6147) (check-in: 45bb5703 user: drh tags: trunk)
2009-01-08
21:00
Increased test coverage in where.c. (CVS 6146) (check-in: 1e5725c5 user: drh tags: trunk)
18:04
Fix a comment in pager.c. No actual code changes. (CVS 6145) (check-in: 44d3bfdd user: danielk1977 tags: trunk)
17:57
Avoid an 'invalid cast' warning in test_osinst.c. (CVS 6144) (check-in: 931f3a21 user: danielk1977 tags: trunk)
17:50
Fix a couple of potential corruption problems in pager.c. (CVS 6143) (check-in: 5a39525b user: danielk1977 tags: trunk)
15:24
Add a test script for ticket #2565. Change the assert() in pager.c into a testcase() macro. (CVS 6142) (check-in: 1e53e382 user: drh tags: trunk)
14:36
Allow database files to be created in the root directory on unix. Ticket #3570. (CVS 6141) (check-in: 81014334 user: drh tags: trunk)
12:05
Clean up test_journal.c to make it easier to follow. (CVS 6140) (check-in: 5a28c7c7 user: danielk1977 tags: trunk)
03:11
Increase test coverage of where.c. Make sure OR-optimization works on UPDATE and DELETE in addition to SELECT. (Bug found by coverage tests.) (CVS 6139) (check-in: 4b2c08e8 user: drh tags: trunk)
2009-01-07
20:58
Add new test cases to increase coverage of where.c. (CVS 6138) (check-in: 2e1ab51f user: drh tags: trunk)
18:24
Fix a bug in the LIKE query optimization. (Found by coverage testing.) (CVS 6137) (check-in: fe90e911 user: drh tags: trunk)
18:08
Make the same change as (6121) (accidentally reverted). Also enhance test_journal.c to catch this kind of bug. (CVS 6136) (check-in: ccc9c211 user: danielk1977 tags: trunk)
17:06
Add a "synchronous = off" variant to savepoint6.test. (CVS 6135) (check-in: 0f57011e user: danielk1977 tags: trunk)
16:15
Change SQLITE_MAX_FUNCTION_ARG from 100 to 127 to match invariant H16124. Ticket #3567. (CVS 6134) (check-in: 1fe79ffd user: danielk1977 tags: trunk)
15:52
For archival purposes, add the TCL script that was used to generate many of the test cases for where7.test. (CVS 6133) (check-in: 0e01cdc8 user: drh tags: trunk)
15:33
Conjecture: a journal header with nRec==0 must be the last header in the journal. Add asserts to make this conjecture explicit. (CVS 6132) (check-in: 15b5b5f9 user: drh tags: trunk)
15:18
Fix for 'truncate file' operations on in-memory databases. (CVS 6131) (check-in: 83d1eafb user: danielk1977 tags: trunk)
10:52
Add a comment to the openSubjournal() function in pager.c. (CVS 6130) (check-in: 04387ae1 user: danielk1977 tags: trunk)
10:35
Fix a problem with reverting a 'DROP TABLE' command executed inside of a savepoint on an auto-vacuum database. (CVS 6129) (check-in: 3a4bb832 user: danielk1977 tags: trunk)
08:12
Fix savepoint related bugs. A rollback caused by an IO error or "OR ROLLBACK" clause while one or more savepoints were open was leaving the sqlite3 structure in an invalid state. (CVS 6128) (check-in: e5d42c69 user: danielk1977 tags: trunk)
03:59
Add a HIGHSTRESS parameter to the sqlite3_config_alt_pcache debugging command in the test harness - to force calling pagerStress() more frequently. (CVS 6127) (check-in: e426860b user: drh tags: trunk)
02:03
Pager changes attempting to verify that ticket #2565 cannot recur. (CVS 6126) (check-in: 15b9dac4 user: drh tags: trunk)
2009-01-06
18:43
Now that we have permutations.test, it is really only necessary to run all.test for a single cycle. So make that the default. (CVS 6125) (check-in: 3c2f292f user: drh tags: trunk)
18:21
Reduce the number of paths in btreeCopyFile(). (CVS 6124) (check-in: df2c285c user: danielk1977 tags: trunk)
17:52
Modify test_journal.c to verify the page data being written to the journal file. (CVS 6123) (check-in: 0d258956 user: danielk1977 tags: trunk)
15:58
Cleanup of the PAGERTRACE macro. Other comment changes in pager.c. (CVS 6122) (check-in: ee7b4b60 user: drh tags: trunk)
15:28
The fix in (6120) wasn't quite right. This fixes it. (CVS 6121) (check-in: ddc2ebfa user: danielk1977 tags: trunk)
15:20
Fix a recently introduced problem in "permutations.test autovacuum_crash". (CVS 6120) (check-in: 2cdbb468 user: danielk1977 tags: trunk)
14:50
Update permutations.test so that it does not show an error when running the singlethread and multithread test cases on THREADSAFE=0 builds. (CVS 6119) (check-in: 301b57b7 user: drh tags: trunk)
14:34
Fix a memory leak in test_journal.c (test code). Also remove function pager_truncate_cache(), a wrapper around sqlite3PCacheTruncate(), from pager.c. (CVS 6118) (check-in: a64f3db0 user: danielk1977 tags: trunk)
14:19
Fix compiler warnings. (CVS 6117) (check-in: da770a8d user: drh tags: trunk)
13:40
Add some savepoint related test cases and fix a few problems. (CVS 6116) (check-in: 8c62ea4f user: danielk1977 tags: trunk)
00:11
Remove leftover "breakpoint" from the fuzz.test script. (CVS 6115) (check-in: c2482d88 user: drh tags: trunk)
00:08
Fix a problem in the WHERE clause generator when the FROM clause is empty. (CVS 6114) (check-in: a7015625 user: drh tags: trunk)
2009-01-05
22:30
The fix in (6111) was not quite right. This version works better. (CVS 6113) (check-in: 5f80140a user: drh tags: trunk)
19:36
Reenable fuzz testing for all.test. Make sure the query flattener copies over aggregate information from expressions on outer query terms while flattening. (CVS 6112) (check-in: e02323b3 user: drh tags: trunk)
18:02
Make sure the MEM_Zero flags is cleared whenever removing MEM_Blob. (CVS 6111) (check-in: b2131e86 user: drh tags: trunk)
17:19
Include fuzz3.test in all.test. Get fuzz3.test working again. (CVS 6110) (check-in: 77dc19cf user: drh tags: trunk)
17:15
Fix some test code problems in "permutations.test journaltest pager.test". (CVS 6109) (check-in: cf627752 user: danielk1977 tags: trunk)
2009-01-03
15:06
Add some tests with attached databases to savepoint.test. Also tests of creating and dropping tables in auto-vacuum mode inside of a savepoint. (CVS 6108) (check-in: ca7f11d5 user: danielk1977 tags: trunk)
14:04
When the commit_hook calls a query recursively, make sure the commit_hook is not invoked recursively. Ticket #3564. (CVS 6107) (check-in: 27ae4065 user: drh tags: trunk)
12:55
Fix a typo in a comment. (CVS 6106) (check-in: 50f57cd1 user: drh tags: trunk)
10:41
Add test file savepoint6.test. Contains pseudo random tests of savepoint related commands. (CVS 6105) (check-in: 2946fbb7 user: danielk1977 tags: trunk)
2009-01-02
21:39
Memory allocation failure in Bitvec are probably all benign. Still, add code to check this, just to be sure. (CVS 6104) (check-in: 4688e1c8 user: drh tags: trunk)
21:08
Reinitialize page 1 of the database file following a ROLLBACK TO of a transactional SAVEPOINT on an initially empty database. (CVS 6103) (check-in: 3e9efb76 user: drh tags: trunk)
18:10
Fix compiler warnings in pager.c (CVS 6102) (check-in: 78dd7909 user: drh tags: trunk)
17:33
Modify the (transaction) method of the tcl interface to use savepoints. This makes nested calls to (transaction) work more intuitively. (CVS 6101) (check-in: f047758d user: danielk1977 tags: trunk)
15:47
Add fts_expr.* files to Makefile.in. (CVS 6100) (check-in: 524c8634 user: shane tags: trunk)
15:45
Many of the boundary tests depend on a working 64-bit implementation of TCL, so skip them if this is not available. (CVS 6099) (check-in: b1a4a17f user: shane tags: trunk)
12:35
Increment the version number to 3.6.8. (CVS 6098) (check-in: 7509641a user: drh tags: trunk)
01:10
Do not display matches against the right-hand side of a NOT operator in the output of the FTS snippet() or offsets() functions. (CVS 6097) (check-in: d44c84c0 user: drh tags: trunk)
2009-01-01
15:20
Fix a (benign) valgrind error that can occur following malloc failure while executing a 'ROLLBACK TO savepoint' command. (CVS 6096) (check-in: 9ff8598f user: danielk1977 tags: trunk)
14:06
Fix some problems in the fts3 expression parser with mismatched parenthesis. (CVS 6095) (check-in: ccfe4580 user: danielk1977 tags: trunk)
12:34
Additional test cases and cleanup of FTS3 parenthesis processing. (CVS 6094) (check-in: afac4293 user: drh tags: trunk)
07:42
Add a couple of extra tests for the fts3 expression parser to improve mcdc coverage. (CVS 6093) (check-in: 13146b34 user: danielk1977 tags: trunk)
07:08
Add pseudo-random tests of the fts3 expression parser. Revise the fix in (6091). (CVS 6092) (check-in: 11c2d468 user: danielk1977 tags: trunk)
04:19
Fix a bug parsing "<expr> AND (abc NEAR def)" in fts3_expr.c. (CVS 6091) (check-in: d1a6a2ed user: danielk1977 tags: trunk)
2008-12-31
21:52
Avoid surplus bytes at the end of the keyword string table. Add testcase() macros to make sure all keywords are used during testing. (CVS 6090) (check-in: 73958060 user: drh tags: trunk)
19:27
Fix the name in the documentation of the compile-time macro for enabling FTS3 parenthesis processing. (CVS 6089) (check-in: ac8258da user: drh tags: trunk)
16:27
Fix the FTS3 expression parser so that it works in the amalgamation when FTS3 is disabled. (CVS 6088) (check-in: 7e238e86 user: drh tags: trunk)
16:01
Fix the FTS3 module with parenthesis syntax so that it will work in the amalgamation. (CVS 6087) (check-in: c2b9891f user: drh tags: trunk)
2008-12-30
17:55
Fix a bug in the multi-index OR cost estimator. Remove leftover "breakpoint" commands from test scripts. (CVS 6086) (check-in: b090d573 user: drh tags: trunk)
16:35
Add LEFT JOIN test cases for multi-index OR in where9.test. (CVS 6085) (check-in: 96f3b629 user: drh tags: trunk)
16:18
Get EXPLAIN QUERY PLAN working with the multi-index OR optimization. Added new test script "where9.test". (CVS 6084) (check-in: 4b646022 user: drh tags: trunk)
16:13
Add further pseudo-randomly generated test cases to where8.test. (CVS 6083) (check-in: e01f6ef9 user: danielk1977 tags: trunk)
15:51
Fix a bug in where8.test causing a tcl exception. (CVS 6082) (check-in: 495b569a user: danielk1977 tags: trunk)
15:26
Add a few more tests to where8.test. (CVS 6081) (check-in: ac28aa8b user: danielk1977 tags: trunk)
14:40
Still more test cases in where7.test. (CVS 6080) (check-in: eb9ba5fe user: drh tags: trunk)
14:14
Add many new test cases to where7.test. (CVS 6079) (check-in: 17498583 user: drh tags: trunk)
13:21
Do not run savepoint4.test (crash simulation tests) in permutations.test. It slows things down too much. (CVS 6078) (check-in: 2df02b54 user: danielk1977 tags: trunk)
12:00
Add a couple of extra tests for the "WHERE ... OR" optimization. (CVS 6077) (check-in: 35c87585 user: danielk1977 tags: trunk)
09:45
Fix a bug in where.c causing a malfunction when an INDEXED BY clause specified an unusable index on other than the leftmost table in the FROM clause. Ticket #3560. (CVS 6076) (check-in: f8ff0212 user: danielk1977 tags: trunk)
06:36
Fix a bug in README.tokenizers. Ticket #3559. (CVS 6075) (check-in: b8898d13 user: danielk1977 tags: trunk)
06:24
Invoke the authorization callback when compiling SAVEPOINT, ROLLBACK TO and RELEASE commands. (CVS 6074) (check-in: e49807b1 user: danielk1977 tags: trunk)
2008-12-29
23:45
Always make sure WhereClause objects are initialized to zero when they are first allocated. (CVS 6073) (check-in: 7d0ae55d user: drh tags: trunk)
18:33
Add test file where8.test. (CVS 6072) (check-in: bff460ec user: danielk1977 tags: trunk)
14:51
Remove an old variable declaration that was commented out using a C++ comment. (CVS 6071) (check-in: 0b972f14 user: danielk1977 tags: trunk)
10:39
Set the OPFLG_IN1 flag on a couple of extra opcodes. (CVS 6070) (check-in: 03d03504 user: danielk1977 tags: trunk)
2008-12-28
20:47
Multi-index OR optimizer response to ORDER BY rowid. But fix in sqlite3_stmt_status(): report a full table scan when "ORDER BY rowid" is used without constraints. (CVS 6069) (check-in: 3464d369 user: drh tags: trunk)
18:35
Optimize WHERE clauses that constain AND, BETWEEN, and LIKE terms as operands of an OR. (CVS 6068) (check-in: 67cf24b3 user: drh tags: trunk)
16:55
Simplify the VM code that implements WHERE claues. (CVS 6067) (check-in: fa95f843 user: drh tags: trunk)
2008-12-27
15:23
Fix a problem with savepoint and incremental-vacuum. (CVS 6066) (check-in: 08352f9e user: danielk1977 tags: trunk)
2008-12-26
07:56
Reset the column cache before coding each step of a trigger program. Candidate fix for #3554. (CVS 6065) (check-in: a1b1f6cd user: danielk1977 tags: trunk)
2008-12-24
11:25
Fix a virtual table related assert() that can fail following a malloc failure. (CVS 6064) (check-in: c6fd3b8f user: danielk1977 tags: trunk)
09:30
Fix a couple of problems in test file test_journal.c that were causing segfaults when running all.test. (CVS 6063) (check-in: 416c9efb user: danielk1977 tags: trunk)
2008-12-23
23:56
Continuing improvements to the multi-index OR-clause optimizer. Added a few simple test cases. (CVS 6062) (check-in: 55d4f493 user: drh tags: trunk)
19:15
Fix a problem with the savepoint code and in-memory journals. (CVS 6061) (check-in: 26ceebf3 user: danielk1977 tags: trunk)
16:23
Fix an OOM problem in where.c. (CVS 6060) (check-in: d2105f61 user: drh tags: trunk)
15:58
Make sure nOverflow is always cleared when a page is released. (CVS 6059) (check-in: 8d0f7244 user: drh tags: trunk)
13:35
Multi-index OR-clause optimization now works for simple tests. There are no test scripts for it yet, though. And it is disabled by default, pending further testing and optimization. We need a lot of both. (CVS 6058) (check-in: d77a7023 user: drh tags: trunk)
11:46
Add a test to savepoint.test that tests that nothing goes wrong if an incremental vacuum occurs inside a savepoint. (CVS 6057) (check-in: fc4f0621 user: danielk1977 tags: trunk)
11:11
In sqlite3AddColumn(), use local variable 'db' instead of 'pParse->db'. (CVS 6056) (check-in: 0c53a4c2 user: danielk1977 tags: trunk)
10:37
Fix a couple of assert() failures that can occur in btree.c and pager.c. (CVS 6055) (check-in: ae44e748 user: danielk1977 tags: trunk)
2008-12-22
15:04
Fix a reference counting bug in rtree. Ticket #3549. (CVS 6054) (check-in: bbdc0e9f user: danielk1977 tags: trunk)
11:43
Changes to test scripts so that veryquick.test runs with SQLITE_TEMP_STORE=3 defined. Also a fix to stop the same switch causing a crash in the savepoint code. (CVS 6053) (check-in: ee0e6eae user: danielk1977 tags: trunk)
10:58
Add a case to permutations.test to run tests with the test_journal.c backend installed. Also many fixes to test_journal.c and one quite obscure fix to pager.c. (CVS 6052) (check-in: bb177e30 user: danielk1977 tags: trunk)
03:37
Fix a variable type to prevent a warning in the proxy-locking code. (CVS 6051) (check-in: d9595b96 user: danielk1977 tags: trunk)
2008-12-21
03:51
Continue refactoring where.c in preparation for installing OR-clause optimizations. (CVS 6050) (check-in: 778e91dd user: drh tags: trunk)
2008-12-20
18:33
Add a vfs backend that detects problems like the one addressed by (6043) and (6047). (CVS 6049) (check-in: 49172e48 user: danielk1977 tags: trunk)
13:18
Do not use long long constants in code. Ticket #3547. (CVS 6048) (check-in: 51b3bfc3 user: drh tags: trunk)
08:39
Fix the crash-followed-by-corruption bug revealed by savepoint4.test. This is actually the same bug as was fixed by (6043). The fix was not entirely correct. (CVS 6047) (check-in: 68833626 user: danielk1977 tags: trunk)
02:14
Specify type "void" in the parameter list of functions that take no parameters. Tickets #3545 and #3546. (CVS 6046) (check-in: c2228bd1 user: drh tags: trunk)
02:06
Enhanced analysis of OR terms in a WHERE clause. Another step toward being able to use indices with OR-connected WHERE clause terms. (CVS 6045) (check-in: c3f7aa01 user: drh tags: trunk)
2008-12-19
18:45
Add extra crash test cases that stress the savepoint mechanism to savepoint4.test. Currently, these tests are causing database corruption which (obviously) needs to be fixed. (CVS 6044) (check-in: e06a968a user: danielk1977 tags: trunk)
16:31
Add some crash-tests for savepoint. Fix a bug revealed by these tests. (CVS 6043) (check-in: 6f36c166 user: danielk1977 tags: trunk)
11:37
Add the file ext/fts3/README.syntax, containing documentation describing the two query syntaxes now supported by fts3. (CVS 6042) (check-in: ed81ad5a user: danielk1977 tags: trunk)
2008-12-18
22:25
Fix the Oracle and MS-Sql command-line terminator logic in the CLI. Ticket #3544. (CVS 6041) (check-in: dcc8935f user: drh tags: trunk)
18:31
Increase test coverage of new savepoint code. (CVS 6040) (check-in: d915718d user: danielk1977 tags: trunk)
15:45
Add savepoint2.test, a file containing savepoint tests similar to tests in trans.test and avtrans.test. And a few savepoint bug fixes. (CVS 6039) (check-in: 98a53d91 user: danielk1977 tags: trunk)
05:30
Fix a bug in icuOpen() in fts2. (CVS 6038) (check-in: b9c722bd user: danielk1977 tags: trunk)
2008-12-17
19:22
Update the WHERE clause processing infrastructure in preparation for adding multi-index OR evaluation. (CVS 6037) (check-in: 78401b33 user: drh tags: trunk)
17:30
Add the savepoint feature. This feature is largely untested at this point. (CVS 6036) (check-in: 34b56600 user: danielk1977 tags: trunk)
15:49
Fix some strict-aliasing problems in fts3_expr.c. (CVS 6035) (check-in: 20a4ca5d user: danielk1977 tags: trunk)
15:18
Modify fts3 to support a more complex expression syntax that allows parenthesis. The new syntax is not entirely backwards compatible, so is disabled by default. Use -DSQLITE_ENABLE_FTS3_PARENTHESIS to enable it. (CVS 6034) (check-in: 7389b9ec user: danielk1977 tags: trunk)
2008-12-16
18:15
Version 3.6.7 (CVS 6033) (check-in: f4f40370 user: drh tags: trunk, release)
17:20
Fix a compile error in an assert() and a warning with MSVC builds. (CVS 6032) (check-in: 8b8f6a6a user: shane tags: trunk)
13:46
Make sure the memory returned from sqlite3ScratchMalloc() is 8-byte aligned. Ticket #3542. (CVS 6031) (check-in: 13b56b7f user: drh tags: trunk)
2008-12-15
22:51
New hyperlinks added to C interface documentation. No changes to working code. (CVS 6030) (check-in: 230cb68e user: drh tags: trunk)
16:33
Add test cases that verify evaluation of randomly generated SQL expressions. (CVS 6029) (check-in: 4685ffcc user: drh tags: trunk)
15:27
Convert the "~" and "NOT" operators to be two-address instructions. Ticket #3541. (CVS 6028) (check-in: ea9b747e user: drh tags: trunk)
2008-12-14
14:45
Add the example from #3359 to the test suite. (CVS 6027) (check-in: 84f8417c user: danielk1977 tags: trunk)
02:55
Fix the name of the source algorithm in the comments of the script generators for the recently checked-in test cases for integer boundary-value testing. (CVS 6026) (check-in: adba0f3c user: drh tags: trunk)
2008-12-12
19:19
Add many new integer boundary value tests. Ticket #3536. (CVS 6025) (check-in: 45277238 user: drh tags: trunk)
17:56
Rework the rowid lookup logic in the query optimizer to fix various boundary value problems. Ticket #3536. Renamed the OP_MoveXX opcodes to OP_SeekXX. (CVS 6024) (check-in: e545490a user: drh tags: trunk)
2008-12-11
20:03
Previous change to the OP_ForceInt opcode did not work correctly when the input is a negative floating point value. This change is the fix. Ticket #3536. (CVS 6023) (check-in: f6c50f35 user: drh tags: trunk)
19:50
Make sure the OP_ForceInt vdbe opcode does not cause a rowid overflow. Ticket #3536. Tests to verify this change will be checked in separately. (CVS 6022) (check-in: 6a049c65 user: drh tags: trunk)
16:17
Guard against attacks from deliberately corrupted database files. (CVS 6021) (check-in: da2ec964 user: drh tags: trunk)
13:08
Increase the version number to 3.6.7. (CVS 6020) (check-in: 7c367515 user: drh tags: trunk)
13:05
Initialize a local variable so as to avoid a valgrind warning. (CVS 6019) (check-in: 0d316160 user: drh tags: trunk)
02:58
Removed a few more harmless warnings from MSVC. (CVS 6018) (check-in: 72fd92bd user: shane tags: trunk)
02:56
Fix the TCL test harness so that it compiles and runs on OSX with SQLITE_ENABLE_LOCKING_STYLE. (CVS 6017) (check-in: 561d5de1 user: drh tags: trunk)
02:20
Initialize the yyzerominor constant generated by lemon. (CVS 6016) (check-in: 76c8f6ba user: drh tags: trunk)
2008-12-10
23:04
More code obfuscation designed to thwart compiler warning messages. (CVS 6015) (check-in: 0a1888a7 user: drh tags: trunk)
22:32
Try to remove compiler warnings from vdbe.c. (CVS 6014) (check-in: 50352950 user: drh tags: trunk)
22:30
Work to remove harmless MSVC compiler warnings. (CVS 6013) (check-in: 715dcd52 user: shane tags: trunk)
22:18
The strlen30 function in tclsqlite.c should be defined regardless of whether or not the amalgamation is used. (CVS 6012) (check-in: d8e8c7e5 user: drh tags: trunk)
22:15
Fix an issue with the new sqlite3Strlen30() introduced by check-in (6007). Additional casts for compiler warnings. (CVS 6011) (check-in: 258722b6 user: drh tags: trunk)
21:19
Additional work at eliminating silly compiler warnings. (CVS 6010) (check-in: ea01d437 user: drh tags: trunk)
20:11
Fixed typo in comment in mkkeywordhash.c. (CVS 6009) (check-in: b7dd05b4 user: shane tags: trunk)
20:10
Added option (-l) to lemon parser to have it skip printing line numbers (#line ... ). (CVS 6008) (check-in: ccb9393a user: shane tags: trunk)
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) (check-in: c872d554 user: drh tags: trunk)
18:03
More explicit type casting to silence VC++. (CVS 6006) (check-in: 14e6d19c user: drh tags: trunk)
17:20
Remove or rename local variables that shadow other variables or parameters. (CVS 6005) (check-in: e7e9fa4f user: drh tags: trunk)
16:45
Add explicit casts to silence nuisance warnings from VC++. (CVS 6004) (check-in: da1cbfa7 user: drh tags: trunk)
11:49
Use memcpy() rather than "=" to copy a structure, in order to work around a bug in the XLC compiler on AIX. Ticket #3344. (CVS 6003) (check-in: 18bbcafc user: drh tags: trunk)
11:44
Remove some obsolete markup from sqlite.h.in. (CVS 6002) (check-in: d1d05e2a user: drh tags: trunk)
2008-12-09
14:46
Return an appropriate out-of-memory message when sqlite3_errmsg() is called following an SQLITE_NOMEM error. (CVS 6001) (check-in: 228ebe41 user: drh tags: trunk)
14:03
Finish incomplete edit of resolve.c from check-in (5998). (CVS 6000) (check-in: 0d7e150e user: drh tags: trunk)
13:12
Additional test cases for nested subqueries in a WHERE clause. (CVS 5999) (check-in: 4f10f19d user: drh tags: trunk)
13:04
A subquery in the result set of a SELECT should be able to look into outer queries to find variable references. But a subquery in the FROM clause should not be able to do this. Ticket #3530. (CVS 5998) (check-in: be03fa05 user: drh tags: trunk)
04:59
Removed some harmless compiler warnings and converted some "double" ops to "int" in date.c. (CVS 5997) (check-in: 5eb648a0 user: shane tags: trunk)
03:55
Get rid of more silly compiler warnings. (CVS 5996) (check-in: 59ae0020 user: drh tags: trunk)
02:51
Suppress more silly compiler warnings. (CVS 5995) (check-in: 1522c2c6 user: drh tags: trunk)
01:32
Fix compiler warnings in where.c and in the TCL test harness. (CVS 5994) (check-in: 680755db user: drh tags: trunk)
2008-12-08
21:37
Some minor name refactoring in where.c. Avoid declaring variables before initializing them in the amalgamation because VC++ doesn't like that. (CVS 5993) (check-in: 6ed696e7 user: drh tags: trunk)
18:27
Fix a bug in win32 command-line client introduced during efforts to reduce the number of harmless compiler warnings (check-in (5982).) (CVS 5992) (check-in: 6c0b2e75 user: drh tags: trunk)
18:19
The amalgamation now compiles cleanly on GCC with options -pedantic-errors -Wno-long-long. (CVS 5991) (check-in: 73c7302c user: drh tags: trunk)
16:01
Fix two unused-parameter warnings in the parser. (CVS 5990) (check-in: cf419d0b user: drh tags: trunk)
13:42
Fix a segfault associated with the column cache that occurs on nested VIEWs. Ticket #3527. (CVS 5989) (check-in: 490138a2 user: drh tags: trunk)
2008-12-06
16:46
Make sure a memory allocation error did not prevent UTF16 to UTF8 conversion prior to doing a string comparison. (CVS 5988) (check-in: 9d061e20 user: drh tags: trunk)
16:10
Make sure the KeyInfo object attached to a transient table used for sorting records the sqlite3 object used for memory allocation, so that memory allocation failures on UTF16 to UTF8 conversion can be recorded. (CVS 5987) (check-in: 76246d9f user: drh tags: trunk)
14:34
Mark the hash table enlargement in pcache1.c as a benign-failure malloc. (CVS 5986) (check-in: 5c0fe63a user: drh tags: trunk)
2008-12-05
23:40
Make the minimum allocate size for RowSet objects large enough to accommodate 8-byte pointers. (CVS 5985) (check-in: b74885e0 user: drh tags: trunk)
22:40
Fix integrity check so that it always reports memory allocation errors that it encounters. (CVS 5984) (check-in: 2a3f5ce1 user: drh tags: trunk)
20:01
Make sure the nOverflow flag in MemPage is reset to zero after every insert. (CVS 5983) (check-in: bfde3dae user: drh tags: trunk)
17:17
Fix harmless compiler warnings. Improved comments in the query optimizer. (CVS 5982) (check-in: adedd697 user: drh tags: trunk)
15:24
Make use of sqlite3DbMallocSize to maximize the size of growable buffers after each reallocation. Added new comments and testcase() macros to where.c. (CVS 5981) (check-in: 46f2d089 user: drh tags: trunk)
02:36
Variable name changes in the query optimizer for disambiguation and clarification. Clear space in boolean vectors for new bit values to encode new query plan templates. (CVS 5980) (check-in: 81bd0b5c user: drh tags: trunk)
00:00
Expand table.* properly on a USING or a NATURAL join. Ticket #3522. (CVS 5979) (check-in: 06d206ef user: drh tags: trunk)
2008-12-04
22:17
Fix a segfault that can occur in the RowSet object following a malloc failure. (CVS 5978) (check-in: cb0f1658 user: drh tags: trunk)
20:40
Replace the VDBE Fifo object with the new RowSet object. (CVS 5977) (check-in: 39a0750b user: drh tags: trunk)
12:34
Make sure dot-lock is fully enabled when SQLITE_ENABLE_LOCKING_STYLE is disabled. Fix compiler warnings when SQLITE_ENABLE_LOCKING_STYLE is disabled. (CVS 5976) (check-in: 4697249f user: drh tags: trunk)
12:26
Fix a memory leak in the shell that occurs when a ".import" command fails. Ticket #3517 (CVS 5975) (check-in: cb9c1543 user: drh tags: trunk)
12:17
Always enable the OP_Blob opcode in the VDBE even when SQLITE_OMIT_BLOB_LITERAL is defined, since that opcode is used for other purposes as well. Ticket #3518. (CVS 5974) (check-in: 760333de user: drh tags: trunk)
2008-12-03
23:23
Allow the entire FROM clause of a SELECT statement to be in parentheses. (CVS 5973) (check-in: 72ebc8cb user: drh tags: trunk)
22:48
Fix a missing forward declaration that is needed when SQLITE_PREFER_PROXY_LOCKING is defined. (CVS 5972) (check-in: 24235300 user: drh tags: trunk)
22:32
Reorganize the proxy-locking method in os_unix.c. Additional cleanup. (CVS 5971) (check-in: 31f6090e user: drh tags: trunk)
21:26
Make os_unix compile with SQLITE_ENABLE_PROXY_LOCKING (CVS 5970) (check-in: 3efedac6 user: aswift tags: trunk)
19:34
Continue with the cleanup of os_unix.c. (CVS 5969) (check-in: 215d36ea user: drh tags: trunk)
2008-11-29
22:49
Fully initialize the unused bytes of the buffer that will become the journal file header, in order to silence a complaint from valgrind. (CVS 5968) (check-in: 2822cbb9 user: drh tags: trunk)
02:20
Continuing to refactor os_unix.c. This is an incremental check-in. (CVS 5967) (check-in: c13df031 user: drh tags: trunk)
00:56
Continuing work on the os_unix.c refactoring. Removed all of the LOCKING_STYLE_* constants and instead pass around pointers to the underlying sqlite3_io_method objects. (CVS 5966) (check-in: 1017d2fb user: drh tags: trunk)
2008-11-28
15:37
First step in refactoring os_unix.c. This is work in progress. The code compiles and runs on Linux and MacOSX (as long as SQLITE_ENABLE_LOCKING_STYLE is turned off), but there are a few test failures. (CVS 5965) (check-in: 7825cd63 user: drh tags: trunk)
2008-11-27
02:22
Add 19 new assert() statements in btree.c that attempt to detect writing to a cache page which is not writeable. (CVS 5964) (check-in: f9c73590 user: drh tags: trunk)
2008-11-26
20:09
expected error message has trailing space (CVS 5963) (check-in: 165bc2d7 user: pweilbacher tags: trunk)
20:03
remove warning in os2Sync() with SQLITE_NO_SYNC set (CVS 5962) (check-in: 68a51f67 user: pweilbacher tags: trunk)
19:56
make os2Randomness() act the same as other platforms with SQLITE_TEST (all zeroed buffer) (CVS 5961) (check-in: 5d189df3 user: pweilbacher tags: trunk)
18:01
Version 3.6.6.2 (CVS 5960) (Leaf check-in: 30a20807 user: drh tags: branch_3_6_6)
17:52
Version number to 3.6.6.2. (CVS 5959) (check-in: 7e010be8 user: drh tags: branch_3_6_6)
14:55
Port check-ins (5955) and (5956) into the 3.6.6 branch. (CVS 5958) (check-in: 8c0edbef user: drh tags: branch_3_6_6)
13:44
Fix the test condition for the test cases added to prevent regressions of ticket #3508. (CVS 5957) (check-in: 4e94aa3b user: drh tags: trunk)
07:40
Fix an obscure memory leak that can follow an IO error. (CVS 5956) (check-in: 8271229c user: danielk1977 tags: trunk)
07:25
Fix a couple of assert() failures provoked by running with a small default cache-size (64 pages). (CVS 5955) (check-in: 1a66481a user: danielk1977 tags: trunk)
2008-11-25
12:07
Move the definition of function transferOwnership() in os_unix.c to below the static functions it calls. (CVS 5954) (check-in: 622cb597 user: danielk1977 tags: trunk)
2008-11-24
20:05
Added cast to PAGE_TO_PGHDR1 macro to remove warning. It looks like despite the warning, the compiler (tested with VS2005 and GCC on Windows) was doing the right thing. Ticket #3510. (CVS 5953) (check-in: e93cec0a user: shane tags: trunk)
20:01
Fixed some spelling errors in sqliteInt.h. Ticket #3509. (CVS 5952) (check-in: 7e134a5c user: shane tags: trunk)
15:32
Added test case to in4.test to try and duplicate crash reported on the mailing list. (CVS 5951) (check-in: 8502fba3 user: shane tags: trunk)
2008-11-22
19:50
fix the compile warnings on OS/2 (CVS 5950) (check-in: b7d0ec83 user: pweilbacher tags: trunk)
18:28
Make sure the error message handler is able to deal with NULL expression spans. Ticket #3508. (CVS 5949) (check-in: ce36b647 user: drh tags: trunk)
15:51
Version 3.6.6.1 (CVS 5948) (check-in: c2266aa0 user: drh tags: branch_3_6_6)
14:07
Port the corruption bug fix of check-in (5938) into a branch off of version 3.6.6. (CVS 5947) (check-in: 15d88edf user: drh tags: branch_3_6_6)
2008-11-21
23:35
Fix testfixture linking problem by marking unix-only symbol as such. (CVS 5944) (check-in: 2ca8b822 user: pweilbacher tags: trunk)
22:21
Factor out and simplify the canonical pathname logic in the VxWorks OS interface. (CVS 5943) (check-in: adb0aafa user: drh tags: trunk)
20:32
Work toward cleaning up and refactoring the os_unix.c VFS module. Change IS_VXWORKS to OS_VXWORKS. The VxWorks implementation can now be built and tested on Linux using -DOS_VXWORKS=1 -Dsem_t=int -DPATH_MAX=512 -DNO_GETTOD=1. (CVS 5942) (check-in: 30a0132a user: drh tags: trunk)
16:58
Fix the OOM handling for explain statements so that it is the same as for regular statements if the OOM error occurs from within a call to sqlite3_column_text() or text16(). (CVS 5941) (check-in: 891b14e1 user: danielk1977 tags: trunk)
16:22
Fix a segfault that can be caused by an INSTEAD OF trigger on a view that includes an expression of the form "table.column" in the select list. (CVS 5940) (check-in: 88a09dbb user: danielk1977 tags: trunk)
09:43
Fix an assert() failure that can occur after an OOM error. (CVS 5939) (check-in: 4c765758 user: danielk1977 tags: trunk)
09:09
Fix the problems demonstrated in tkt35xx.test in a different way to (5936). (CVS 5938) (check-in: ddf980a5 user: danielk1977 tags: trunk)
08:50
Add another test case to tkt35xx.test showing that a statement rollback can also trigger the problem. (CVS 5937) (check-in: 74c08b8d user: danielk1977 tags: trunk)
03:23
On a ROLLBACK, if there page cache entries which are dirty but not in the rollback journal, make sure they get reinitialized in the btree layer. (CVS 5936) (check-in: faded96f user: drh tags: trunk)
00:24
Fixes to the proxy locking so that os_unix.c compiles on linux with proxy locking omitted. (CVS 5935) (check-in: 6f910b70 user: drh tags: trunk)
00:10
Added support for proxy file locking style Added pragma support for controlling proxy file locking Added file control access to last errno and proxy locking Added support for TMPDIR environment variable Extended unit tests to cover new proxy locking pragmas and file control features (CVS 5934) (check-in: b9bc36d3 user: aswift tags: trunk)
2008-11-20
18:20
When a memory allocation fails on the %Q conversion in sqlite3_mprintf(), make sure the error is reported back up the call stack. (CVS 5933) (check-in: eebacbc9 user: drh tags: trunk)
2008-11-19
21:35
In os_win.c, if SQLITE_TEST defined, winRandomness() should return all zeroes like os_unix.c. (CVS 5932) (check-in: 00b68a1e user: shane tags: trunk)
21:03
Version 3.6.6 (CVS 5931) (check-in: 01a6e282 user: drh tags: trunk, release)
18:43
Force the corruptC.test script to use file format 1. (CVS 5930) (check-in: deadc254 user: drh tags: trunk)
18:30
In bitvec.c: removed some of the recursion, minor optimizations, added comments, improved consistency. (CVS 5929) (check-in: 54d714fb user: shane tags: trunk)
18:30
Update the SECURE_DELETE code to track the latest changes in the pager. (CVS 5928) (check-in: e058f509 user: drh tags: trunk)
16:52
Fix some compiler warnings that show up when building the amalgamation only. (CVS 5927) (check-in: d1abe8a1 user: danielk1977 tags: trunk)
14:35
Fix a few more compiler warnings. (CVS 5926) (check-in: 70b2f683 user: danielk1977 tags: trunk)
13:52
In os_unix.c, use "IS_VXWORKS" instead of "defined(__RTP__) || defined(_WRS_KERNEL)". Purely because it's easier on the eyes. (CVS 5925) (check-in: 92c91a6c user: danielk1977 tags: trunk)
12:43
Version number to 3.6.6. (CVS 5924) (check-in: 8cc120fb user: drh tags: trunk)
11:35
Eliminate some of the "unused parameter" warnings in os_unix.c. (CVS 5923) (check-in: 2f5aaad9 user: danielk1977 tags: trunk)
10:22
Simplify the way the pager layer invokes the busy-handler callback. (CVS 5922) (check-in: 7bd1ac18 user: danielk1977 tags: trunk)
09:05
Changes to avoid "unused parameter" compiler warnings. (CVS 5921) (check-in: 88134322 user: danielk1977 tags: trunk)
01:20
Add an alternative application-defined pcache implementation and add test cases to permutations.test to invoke it. Added the SQLITE_CONFIG_GETPCACHE method to sqlite3_config(). (CVS 5920) (check-in: 16f1e6ec user: drh tags: trunk)
2008-11-18
23:25
Fix to the lemon parser template when YYSTACKSIZE is 0 (dynamically allocated stack space). (CVS 5919) (check-in: 00ccc596 user: drh tags: trunk)
23:03
Add support for SQLITE_NO_SYNC for OS/2, too. (CVS 5918) (check-in: 2990b5b8 user: pweilbacher tags: trunk)
19:18
Expose the MBCS->UTF8 convert routine in the Win32 backend. (CVS 5917) (check-in: f4411f0c user: drh tags: trunk)
19:18
Application-defined page cache documentation updates. (CVS 5916) (check-in: db0f1203 user: drh tags: trunk)
07:27
Reduce the number of "missing initializer" warnings. (CVS 5915) (check-in: d68e2795 user: danielk1977 tags: trunk)
2008-11-17
19:18
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) (check-in: 8009220c user: danielk1977 tags: trunk)
16:42
Modifications to avoid unsigned/signed comparisons in where.c. (CVS 5913) (check-in: f35606d1 user: danielk1977 tags: trunk)
15:31
Modifications to avoid signed/unsigned warnings in vdbe.c. (CVS 5912) (check-in: 9939dd83 user: danielk1977 tags: trunk)
14:20
Changes to btree.c to avoid the unsigned/signed comparison warnings. (CVS 5911) (check-in: 24469dba user: danielk1977 tags: trunk)
08:05
Added support for vxworks >= 6.4; RTP mode tested, kernel mode untested. (CVS 5910) (check-in: f45a1493 user: chw tags: trunk)
04:56
Modifications to pager.c to avoid the unsigned/signed warnings. (CVS 5909) (check-in: cb6be84d user: danielk1977 tags: trunk)
2008-11-15
11:22
Fix compiler warnings in pcache1.c related to comparison of unsigned and signed values. (CVS 5908) (check-in: ce77ea98 user: danielk1977 tags: trunk)
04:54
Add a line to genfkey.README showing how to link against a shared library. Ticket #3502. (CVS 5907) (check-in: 800274b7 user: danielk1977 tags: trunk)
2008-11-13
19:12
Fix a couple of memory leaks that may follow malloc failures. (CVS 5906) (check-in: 4cf8a8e1 user: danielk1977 tags: trunk)
18:29
Fixed several more crashes due to corrupt db files. Added corruptC.test to soak.test. (CVS 5905) (check-in: 9b7a52e9 user: shane tags: trunk)
18:20
Added support for -DSQLITE_NO_SYNC to os_win.c. (CVS 5904) (check-in: 26493379 user: shane tags: trunk)
18:02
Fixed typo in tkt3472.test that prevented the test from running. (CVS 5903) (check-in: 428a5479 user: shane tags: trunk)
18:00
Avoid committing a transaction from within the xSync() method of a virtual table. Fix for #3497. (CVS 5902) (check-in: eabb8b75 user: danielk1977 tags: trunk)
16:21
Minor changes to get memsys5 compiling and its tests passing. Ticket #3495. (CVS 5901) (check-in: 96453ca1 user: danielk1977 tags: trunk)
14:42
Update mksqlite3c.tcl to include new file pcache1.c. (CVS 5900) (check-in: 00442e0f user: danielk1977 tags: trunk)
14:28
Add an API to support custom page cache implementations. (CVS 5899) (check-in: 47866d67 user: danielk1977 tags: trunk)
2008-11-12
18:21
Avoid some buffer overreads detected by valgrind while running corruptC.test. (CVS 5898) (check-in: faa6bd7b user: danielk1977 tags: trunk)
15:38
Version 3.6.5 (CVS 5897) (check-in: 369f7498 user: drh tags: trunk, release)
15:24
Do not redefine the MIN and MAX macros if they are already defined. (CVS 5896) (check-in: f41dd205 user: drh tags: trunk)
14:22
In corruptC.test, explicitly set "PRAGMA auto_vacuum = 0". (CVS 5895) (check-in: b6563af8 user: danielk1977 tags: trunk)
14:21
Update the version number to 3.6.5. (CVS 5894) (check-in: f150b870 user: drh tags: trunk)
14:07
Omit the threadOverrideEachOthersLocks tests for builds that non-unix or non-threadsafe. (CVS 5893) (check-in: ab418656 user: drh tags: trunk)
12:27
Fix a faulty assert in select.c. Ticket #3494. (CVS 5892) (check-in: e89f9c80 user: drh tags: trunk)
11:57
Modify a failing test case in corruptC.test. The test case was failing only because the integrity_check was returning a slightly different error message than expected. (CVS 5891) (check-in: 0953f300 user: danielk1977 tags: trunk)
08:49
Fix a database corruption related crash uncovered by corruptC.test. (CVS 5890) (check-in: 395084ac user: danielk1977 tags: trunk)
08:07
Make sure affinities and implicit collation sequences are correctly used by comparison expressions in the select-list or having clause of an aggregate query. Ticket #3493. (CVS 5889) (check-in: b8ceaa00 user: danielk1977 tags: trunk)
04:55
Fixed a few more crashes when dealing with corrupt db files. (CVS 5888) (check-in: f8bb34e4 user: shane tags: trunk)
2008-11-11
22:18
Fixed crash during an UPDATE when free cell size is corrupt. (CVS 5887) (check-in: ec18667e user: shane tags: trunk)
20:51
Prevent a crash during an UPDATE when the cell offset is corrupt. (CVS 5886) (check-in: 99d4172e user: shane tags: trunk)
18:55
Send the "Incomplete SQL" error message of the CLI to stderr instead of stdout. Ticket #3476. (CVS 5885) (check-in: dacae200 user: drh tags: trunk)
18:43
Remove some asserts that refer to variables removed in (5830). (CVS 5884) (check-in: 9d880a6f user: danielk1977 tags: trunk)
18:34
Change the way threadsOverrideEachOthersLocks() works to avoid trying to write-lock a (potentially) read-only files. Also, assume that on non-linux systems threads do override each others locks. Ticket #3472. (CVS 5883) (check-in: 8ecae094 user: danielk1977 tags: trunk)
18:28
Cleanup in flattenSubquery. Add OOM tests for flattenSubquery. Fix issues with OOM errors causes problems for flattenSubquery. Ticket #3485. (CVS 5882) (check-in: ea5f4baa user: drh tags: trunk)
17:36
Fixed crash in integrity_check with corrupt content offset size in page header. (CVS 5881) (check-in: 0659a666 user: shane tags: trunk)
15:48
Avoid signed/unsigned comparison warnings in bitvec.c by changing the types of loop variables to unsigned int. (CVS 5880) (check-in: da869446 user: drh tags: trunk)
00:36
When an assignment occurs in a boolean, always test the result using "!=0" to avoid confusion and make it clear that assignment is intended, not an equality test. Ticket #3491. (CVS 5879) (check-in: 89ee5295 user: drh tags: trunk)
00:30
Fix the CLI so that it does not terminate input when an Oracle or MS-SQL command terminator mark is seen in the middle of a string literal. Ticket #3490. (CVS 5878) (check-in: 68662e3b user: drh tags: trunk)
00:21
When an OOM error occurs while resizing an sqlite_value object, make sure the value of the object is set to NULL. Ticket #3488. (CVS 5877) (check-in: 7b9c9b35 user: drh tags: trunk)
2008-11-10
23:54
Fix the documentation of the SQLITE_FUNCTION authorizer code so that it agrees with how SQLite has always behaved. Ticket #3489. (CVS 5876) (check-in: 806b6ed2 user: drh tags: trunk)
20:01
#ifdef out unused static function mutexIsNT(). Ticket #3481. (CVS 5875) (check-in: 23918680 user: shane tags: trunk)
19:24
Updated comment in source. Ticket #3453. (CVS 5874) (check-in: 83caa220 user: shane tags: trunk)
18:20
Add check for ifcapable autovacuum to vacuum2-3.3 test. Ticket #3435. (CVS 5873) (check-in: fc36f2fc user: shane tags: trunk)
18:05
Removed a few more small parts of memsys6 code, including some config and test code for it; (CVS 5872) (check-in: a11241d6 user: shane tags: trunk)
17:14
In btree.c, omit calls to setChildPtrmaps() if SQLITE_OMIT_AUTOVACUUM is defined. Ticket #3439. (CVS 5871) (check-in: e0f07323 user: shane tags: trunk)
17:08
Fixed typos; Consistent use of Mac OS X name; (CVS 5870) (check-in: dfc94743 user: shane tags: trunk)
2008-11-07
03:29
Prevent buffer overruns when converting malformed UTF16 to UTF8. Ticket #3482. (CVS 5869) (check-in: 3f657e88 user: drh tags: trunk)
00:24
Prevent a rollback from crashing if the sector-size field of the rollback journal is corrupted. (CVS 5868) (check-in: cf9d1d93 user: drh tags: trunk)
00:06
Add documentation to make it clear that short reads from xRead in the VFS must be zero-filled. (CVS 5867) (check-in: fb311d6f user: drh tags: trunk)
2008-11-06
15:33
Fix a bug in the CAST operator associated with the column cache. (CVS 5866) (check-in: 1b6a5140 user: drh tags: trunk)
2008-11-05
17:41
Fix memory allocation problems when string length exceeds limits. (CVS 5865) (check-in: b568e325 user: drh tags: trunk)
16:37
The COMMIT command now works even if there are pending queries, as long as the pending queries are reading and not writing the database. (CVS 5864) (check-in: 51f04aaf user: drh tags: trunk)
2008-11-04
21:51
Should be 'memjournal.lo' instead of 'memjournal.o'. Ticket #3480. (CVS 5863) (check-in: 8b868604 user: shane tags: trunk)
14:55
Add test cases for sqlite3_db_mutex(). (CVS 5862) (check-in: f818e8e5 user: danielk1977 tags: trunk)
14:48
Enhance documentation of sqlite3_db_mutex(). (CVS 5861) (check-in: 3aed410a user: drh tags: trunk)
14:25
Avoid a segfault when OOM on a simple EXPLAIN query. Ticket #3478. (CVS 5860) (check-in: acf26cc0 user: drh tags: trunk)
13:46
Add the sqlite3_db_mutex() interface. No test cases yet. (CVS 5859) (check-in: d95de32e user: drh tags: trunk)
2008-11-03
21:40
Test cases to verify that COMMIT and ROLLBACK return SQLITE_BUSY when there are active statements. (CVS 5858) (check-in: cedfa214 user: drh tags: trunk)
20:55
Change the name of the Cursor object to VdbeCursor. (CVS 5857) (check-in: fdb98fd8 user: drh tags: trunk)
09:39
Modify an assert() statement to fix #3473. No other code changes. (CVS 5856) (check-in: aca6b260 user: danielk1977 tags: trunk)
09:06
Fix a bug reported on the mailing list triggered by the pattern "SELECT
2008-10-31
13:57
Test that single byte corruptions in increasingly larger quantities are handled gracefully. (CVS 5854) (check-in: c73d9159 user: shane tags: trunk)
10:53
Change the way sqlite3VdbeSetColName() is called so as to remove a few lines of code. This also fixes #3470. (CVS 5853) (check-in: bfce9142 user: danielk1977 tags: trunk)
2008-10-30
22:13
Fix a faulty assert() in the merge implementation of the UNION operator. Ticket #3467. (CVS 5852) (check-in: cd1662e9 user: drh tags: trunk)
17:21
Fix a crash that can follow a malloc failure in sqlite3ValueFromExpr(). Ticket #3468. (CVS 5851) (check-in: 0996783b user: danielk1977 tags: trunk)
15:03
Add the sqlite3_extended_errcode() interface. Change to return SQLITE_BUSY instead of SQLITE_ERROR when a COMMIT is attempted and one or more queries are still pending. (CVS 5850) (check-in: 4c6a90a1 user: drh tags: trunk)
2008-10-29
07:01
If a hot-journal file is detected but the application does not have the required read/write permissions, return SQLITE_CANTOPEN. Prior to this change, SQLITE_BUSY was returned. Ticket #3457. (CVS 5849) (check-in: dc5308c7 user: danielk1977 tags: trunk)
2008-10-28
18:58
Remove the vestigial mem4 and mem6 memory allocators. Add the SQLITE_ZERO_MALLOC compile-time option and the mem0.c module to handle memory allocation for that case. (CVS 5848) (check-in: 4651f590 user: drh tags: trunk)
18:12
Add data structure description comments to memjournal.c. (CVS 5847) (check-in: e9c2adbc user: drh tags: trunk)
17:52
Avoid exposing internal interfaces sqlite_attach() and sqlite_detach() as SQL scalar functions. Ticket #3466. (CVS 5846) (check-in: 679c0b35 user: danielk1977 tags: trunk)
2008-10-27
15:34
If an SQLITE_DELETE authorization callback returns SQLITE_IGNORE, proceed with the delete operation but disable the truncate optimization. (CVS 5845) (check-in: 65a2e131 user: danielk1977 tags: trunk)
13:59
Make sqlite3_count_changes() and total_changes() work with "DELETE FROM ". (CVS 5844)
(check-in: e68e4282 user: danielk1977 tags: trunk)
08:24
Remove some if() conditions that are always true from delete.c. (CVS 5843) (check-in: 297ad90d user: danielk1977 tags: trunk)
2008-10-25
17:10
Remove unused parameter from function rtreeInit() (part of the r-tree extension). (CVS 5842) (check-in: 3224ea59 user: danielk1977 tags: trunk)
15:03
Disable the result-set alias cache when on conditional code branches. Ticket #3461. The column cache and result set alias cache mechanisms are prone to this kind of error and need to be refactored. This check-in should be considered a temporary fix in advance of a more general redesign of the whole mechanism. (CVS 5841) (check-in: 1fa3bbd8 user: drh tags: trunk)
09:35
Add file tkt3461.test with a few examples of bug #3461. Because these tests currently fail they are disabled for now. (CVS 5840) (check-in: f2cc1591 user: danielk1977 tags: trunk)
2008-10-23
05:45
Fix a bug in pragma table_info. Column default values specified as negative numbers (col DEFAULT -1) were being reported as NULL by the pragma. (CVS 5839) (check-in: 0e448bc6 user: danielk1977 tags: trunk)
2008-10-22
18:27
Updated configure/makefiles to handle SQLITE_ENABLE* compile options. Made sure makefile passes command line options (OPTS=-Dfoo) to the compiler. Add -DSQLITE_COVERAGE_TEST=1 if gcov being used. (CVS 5838) (check-in: acb106e5 user: shane tags: trunk)
16:55
Removed some more dead code and fixed some unresolved externals for WINCE. Ticket #3420. (CVS 5837) (check-in: 5276e31d user: shane tags: trunk)
16:26
Make sure variable declarations occur first in code blocks. (CVS 5836) (check-in: b78f44c9 user: shane tags: trunk)
16:04
Test cases for ticket #3442. (CVS 5835) (check-in: a8bb5acf user: shane tags: trunk)
10:45
Fix an assert() failure that can occur following a malloc() failure. Ticket #3455. (CVS 5834) (check-in: e0d3aa75 user: danielk1977 tags: trunk)
2008-10-21
04:30
Update the autoconf build system to include memjournal.c. (CVS 5833) (check-in: a3c810f0 user: danielk1977 tags: trunk)
2008-10-19
21:03
When a name in double quotes falls back to being a string literal, make sure it has no affinity. Ticket #3442. (CVS 5832) (check-in: 81cfee5c user: drh tags: trunk)
2008-10-17
19:13
Add the memjournal.c file that should have been with the previous checkin. (CVS 5831) (check-in: 0509eff0 user: danielk1977 tags: trunk)
18:51
Add "pragma journal_mode=memory". Change the way rollback works for in-memory databases so that it reuses the journal_mode=memory code. (CVS 5830) (check-in: 39ebf01a user: danielk1977 tags: trunk)
15:10
Fix a typo in documentation. Ticket #3447. (CVS 5829) (check-in: 5ce2ddff user: drh tags: trunk)
2008-10-16
13:27
Fix an error in (5826). (CVS 5828) (check-in: 8065a92f user: danielk1977 tags: trunk)
2008-10-15
19:03
Fix a naming problem when SQLITE_MUTEX_NOOP is used. (CVS 5827) (check-in: 35ce71c6 user: drh tags: trunk)
16:02
Do not open and sync the directory in unixDelete() if the SQLITE_DISABLE_DIRSYNC option is defined. (CVS 5826) (check-in: 8ef14164 user: danielk1977 tags: trunk)
11:59
Version 3.6.4 (CVS 5825) (check-in: cd73cffa user: drh tags: trunk, release)
11:43
After running speed1.test and speed1p.test, reset the size of the lookaside buffer. Otherwise, subsequent runs of malloc5.test may report an error. Changes to test code only. (CVS 5824) (check-in: 9283478e user: danielk1977 tags: trunk)
2008-10-14
19:21
Disable the page-cache at the end of pcache2.test. (CVS 5823) (check-in: 3d2d05b6 user: danielk1977 tags: trunk)
18:21
Fix the amalgamation generator to recognize indented #include directives. Ticket #3438. (CVS 5822) (check-in: 494510d8 user: drh tags: trunk)
17:58
Fix the xRandomness() method on the unix VFS to return the number of bytes of randomness obtained. (CVS 5821) (check-in: b7687e2f user: drh tags: trunk)
15:54
Make sure malloc3.test runs even if a CREATE TABLE transaction commits prior to the last OOM error. (CVS 5820) (check-in: 603c40e5 user: drh tags: trunk)
14:56
Update main.mk so that a couple of fts3 files are compiled with SQLITE_TEST when building testfixture. (CVS 5819) (check-in: 8eb315ee user: danielk1977 tags: trunk)
14:28
Modifications to main.mk so that -DSQLITE_ENABLE_FTS3 works. (CVS 5818) (check-in: a06d226d user: danielk1977 tags: trunk)
2008-10-13
21:46
fix a few return codes in the OS/2 VFS (CVS 5817) (check-in: 4e978a40 user: pweilbacher tags: trunk)
17:09
Get the load extension tests working on amd64. Needed for test coverage. (CVS 5816) (check-in: 119b69fb user: drh tags: trunk)
15:35
Fix the SQLITE_OMIT_DATETIME_FUNCS compile-time option so that it builds successfully. (CVS 5815) (check-in: c3f91645 user: drh tags: trunk)
14:16
In rollback.test, do not check for journal deletion if the journal mode is not DELETE. Call show_memstats after each test module in all.test and quick.test. (CVS 5814) (check-in: df2c28dc user: drh tags: trunk)
10:56
Use one less temporary table in genfkey.c. The retired table was being used to workaround the bug fixed by (5812). (CVS 5813) (check-in: 73efca98 user: danielk1977 tags: trunk)
10:37
If sqlite3_column_value() is called to obtain a value with the MEM_Static flag set, clear it and set the MEM_Ephem flag before returning. Otherwise, if the value is passed to sqlite3_bind_value() or sqlite3_result_value(), sqlite may attempt to use the buffer after the statement has been finalized. This is not always valid, as MEM_Static only guarantees that a MEM.z buffer will be valid for the lifetime of the owner statement, not that it is actually a static buffer. (CVS 5812) (check-in: b055bfc4 user: danielk1977 tags: trunk)
2008-10-12
02:27
Check for failures in winTruncate. Ticket #3415. (CVS 5811) (check-in: 500c5056 user: shane tags: trunk)
02:03
Added -DSQLITE_ENABLE_RTREE=1 to the mkdll.sh script. Ticket #3427. (CVS 5810) (check-in: 66f57ecb user: shane tags: trunk)
01:49
Add gcov compile options to link line when GCOV option enabled. (CVS 5809) (check-in: 3ddda111 user: shane tags: trunk)
00:27
Added SQLITE_OMIT_DEPRECATED compile time option to leave out deprecated functions. Updated test scripts to skip tests of deprecated functions if they are compiled out. (CVS 5808) (check-in: ba3711ac user: shane tags: trunk)