SQLite

Timeline
Login

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

390 check-ins using file test/backcompat.test version 541314d6

2011-06-01
11:26
Toward version 3.7.5.1. This check-in updates the version number and also patches the pager so that it never spills cache while in WAL mode. The latter patch fixes ticket [2d1a5c67dfc23] and also prevents excessive WAL file sizes if the pager cache starts thrashing. A few test cases fail. (Leaf check-in: 2e5a912a user: drh tags: branch-3.7.5)
2011-04-08
17:22
Fix incrvacuum2.test so that it works with the inmemory_journal permutation. (check-in: 7b8e1761 user: dan tags: trunk)
2011-04-07
19:56
Change two new internal functions in where.c from global to file scope. (check-in: 5bbfa17d user: drh tags: trunk)
15:24
Add test case to verify [d03d63d77e] works. (check-in: bf78acb9 user: dan tags: trunk)
14:47
When searching a list of freelist trunk pages looking for a specific page to allocate, avoid unnecessary journalling of the unchanged trunk pages towards the start of the list. (check-in: d03d63d7 user: drh tags: trunk)
14:05
Avoid running thread1.test or thread2.test if SQLITE_MUTEX_NOOP is defined. (check-in: 532ae32e user: dan tags: trunk)
10:09
Do not run multi-threaded Tcl tests if the library was built with SQLITE_MUTEX_NOOP defined. (check-in: e4e99606 user: dan tags: trunk)
05:17
Fix test script attach4.test so that it works with type 1 VFS implementations (no wal). And wal.test so that it work with a small default pager cache size. (check-in: 29c7b425 user: dan tags: trunk)
03:41
Fix a couple of MSVC compiler warnings; (check-in: 748c9109 user: shaneh tags: trunk)
01:54
Fix an issue with an analyze test. No code changes. (check-in: cddf79db user: shaneh tags: trunk)
01:14
Fix typos in documentation comments. No changes to code. (check-in: 9c64b5a9 user: drh tags: trunk)
2011-04-06
23:40
Add a missing "extern C" terminator to the end of sqlite3session.h. (check-in: 29090b69 user: drh tags: sessions)
23:39
Fix VC++ compiler warnings. (check-in: 7b7c8d36 user: drh tags: sessions)
22:33
Merge in the latest changes from the trunk. (check-in: 435b57dc user: drh tags: sessions)
22:05
Fix a performance regression: Keep two btree masks in each prepared statement; one for btrees used and another for btrees that require locks. Only try to lock the btrees identified by the second mask. (check-in: 614de91a user: drh tags: trunk)
19:15
Fix a benign inaccuracy in the os_unix.c SQLITE_FCNTL_SIZE_HINT code. (check-in: 61a6ccbe user: dan tags: trunk)
17:54
Changes to support building with various SQLITE_OMIT_XXX options defined. (check-in: 2039ed95 user: dan tags: trunk)
12:38
Update a comment in sqliteLimit.h. No changes to code or tests. (check-in: b7296fd3 user: dan tags: trunk)
12:37
Add configurations featuring the -ftrapv switch and large values for SQLITE_MAX_ATTACHED to releasetest.tcl. (check-in: 989588ab user: dan tags: trunk)
2011-04-05
22:13
Merge the latest trunk changes into the sessions branch. (check-in: 45f20261 user: drh tags: sessions)
22:10
Merge the latest trunk changes into the apple-osx branch. (check-in: c77a767c user: drh tags: apple-osx)
22:08
Suppress many harmless compiler warnings, mostly signed/unsigned comparisons within asserts or unused parameters in extensions. (check-in: 3eeb0ff7 user: drh tags: trunk)
19:27
Simplifications to the sqlite3BtreeEnterAll() and LeaveAll() routines. Just have them call BtreeEnter and BtreeLeave() repeatedly rather than trying to be clever. (check-in: 51039b35 user: drh tags: trunk)
19:26
Simplifications to the sqlite3ResetInternalSchema() logic to eliminate unreachable branches. (check-in: a4c3ac98 user: drh tags: trunk)
18:34
Remove dead code from the OP_JournalMode opcode in the VDBE. This code seems to have been useless since [f88c6367d2] on 2010-08-07. (check-in: a89f24e2 user: drh tags: trunk)
17:31
Remove the mutex counter and the logic that attempts to verify that btree mutexes are held continuously. We are not making that assumption at this time. (check-in: 242ce7cf user: drh tags: trunk)
16:09
When committing a WAL transaction, do not write any pages to the WAL file with page numbers greater than the size of the database image in pages. (check-in: 311d0b61 user: dan tags: trunk)
14:22
Fix a documentation typo. (check-in: d25c17ef user: drh tags: trunk)
13:38
Pull the latest changes from trunk (and hence from schema-parse-refactor) into the apple-osx branch. (check-in: 8e885dde user: drh tags: apple-osx)
13:27
Pull the latest trunk changes (and hence the schema-parse-refactor changes) into the sessions branch. (check-in: 03ca8342 user: drh tags: sessions)
13:12
Merge the scheme-parse-refactor changes into trunk: (1) added sqlite3SchemaMutexHeld() asserts, (2) Use -1 instead of 0 to mean "all" in sqlite3ResetInternalSchema(), and other cosmetic changes. (check-in: 5db4511d user: drh tags: trunk)
12:25
Fix the P4_TRANSIENT constant so that it works correct - so that it really makes a copy of the string for the P4 argument. Use P4_TRANSIENT wherever appropriate. Change P4_STATICs of schema names to P4_TRANSIENT. (check-in: bf664b20 user: drh tags: trunk)
11:26
Improved comment on the sqlite3SrcListLookup function. (check-in: bcbc9ff5 user: drh tags: trunk)
02:33
Added ifcapable wal to some test scripts; (check-in: 6b270381 user: shaneh tags: trunk)
02:21
Added ifcapable utf16 to a few test cases; (check-in: 57e0919b user: shaneh tags: trunk)
2011-04-04
23:08
Add a comment to the VACUUM implementation explaining when all schemas are reset and not just the "main" schema. (Closed-Leaf check-in: 2aff1b0c user: drh tags: schema-parse-refactor)
21:48
Changes for consistent use of SQLITE_OS_UNIX and removal of legacy OS_UNIX from testfixture source; (check-in: 78b6eee2 user: shaneh tags: trunk)
21:25
Additional schema mutex checks for sqlite3RootPageMoved(). Reduce the scope of sqlite3ResetInternalSchema() in a few places. (check-in: 39c00907 user: drh tags: schema-parse-refactor)
20:40
Minor comment typo corrections. Simplify an assert. No functional changes. (check-in: 82c23162 user: drh tags: schema-parse-refactor)
18:22
Add a description of access rules for the Schema object and lots of asserts to verify that the access rules are followed. (check-in: ae8374af user: drh tags: schema-parse-refactor)
15:38
Add the "--start=[permutation:][testfile]" option to tester.tcl. For starting quick.test or all.test at the nominated permutation and/or test file. (check-in: a97e8505 user: dan tags: trunk)
14:05
Merge test_syscall.c fix from the trunk. (check-in: 1e1a23cc user: dan tags: schema-parse-refactor)
14:03
Have test_syscall.c include "sqliteInt.h". Otherwise the SQLITE_OS_UNIX symbol may not be defined correctly. (check-in: fda8fadd user: dan tags: trunk)
13:40
Rename sqlite3SchemaFree() to sqlite3SchemaClear() to more accurately reflect its function. (check-in: 71d74400 user: drh tags: schema-parse-refactor)
13:19
Merge the latest changes of trunk into the session branch. (check-in: 95d53c44 user: drh tags: sessions)
13:11
Merge in the latest changes from trunk. (check-in: 6d78a25d user: drh tags: apple-osx)
13:07
Merge in the latest changes from trunk. (check-in: 47b79c40 user: drh tags: schema-parse-refactor)
12:29
Move the expired-statement test for OP_Function until after all memory has been freed. The test is still commented out, however. (check-in: 425e3edb user: drh tags: trunk)
07:05
Changes to oserror.test and syscall.test so that they work with the in-memory journal permutation test. (check-in: 4e996f36 user: dan tags: trunk)
03:27
Suppress unused parameter warnings in sqlite3VdbeEnter() and related routines. (check-in: f8e98ab3 user: drh tags: trunk)
00:14
Remove the BtreeMutexArray object - use the Vdbe.btreeMask field to accomplish the same result. Add a generation counter to btree mutexes in order to assert that mutexes are never temporarily dropped over a range of instructions in order to do deadlock avoidance in some subroutine. Lock all btrees in any Vdbe program that uses OP_ParseSchema. (check-in: d81708f7 user: drh tags: trunk)
2011-04-03
18:19
Make sure that the constant 1 is cast to yDbType before shifting to create an attached database mask. This check-in is a follow-up and fix to the [7aaf8772274422] change that increases the maximum number of attached databases from 30 to 62. (check-in: e2a09ea7 user: drh tags: trunk)
02:41
Fix typos in comments. No changes to code. (check-in: 28c5f12e user: drh tags: trunk)
2011-04-02
20:08
Merge in the latest changes from trunk. (check-in: 0d99229a user: drh tags: schema-parse-refactor)
20:01
Change the name of the "tAttachMask" datatype to "yDbMask". (check-in: 3d6f2e82 user: drh tags: trunk)
17:00
Avoid returning SQLITE_NOTFOUND when the unix xSetSystemCall interface is invoked with NULL passed as the second argument, even if all the default system calls are already installed. (check-in: 3b91eaaa user: dan tags: trunk)
16:50
When resetting any non-TEMP schema, also reset the TEMP schema since it might be holding references to the non-TEMP schema that just got reset. (check-in: 211d5dde user: drh tags: schema-parse-refactor)
16:28
Begin a series of changes designed to reduce the scope and frequency of invalidating schemas. Design goals are that the internal schema should never be deleted out from under a prepared statement that is running and that all prepared statements should be expired if the schema is invalidated. At the same time, minimize the number of schema invalidations. This change merely revises the sqlite3ResetInternalSchema() function to use -1 as the wildcard for "all" rather than 0, so that we can reset the main schema independently of all the others. (check-in: 6a8ad6e3 user: drh tags: schema-parse-refactor)
09:44
Fix a race condition in OP_ParseSchema. (check-in: 71a799b0 user: dan tags: trunk)
09:25
Do not attempt to run tests that use the 'wholenumber' virtual table if the build does not support virtual tables. (check-in: 20afd81a user: dan tags: trunk)
06:44
Fix additional test cases so that they work with DEFAULT_AUTOVACUUM. (check-in: 139bc565 user: dan tags: trunk)
2011-04-01
23:49
Add the "wholenumber" virtual table module to the test suite - useful in populating tables with many rows of content prior to a test. (check-in: 975dff15 user: drh tags: trunk)
20:54
Fix up the Makefile.in so that the configuration script works for "make test". (check-in: 2e03830c user: drh tags: trunk)
20:47
Merge the word-fuzzer branch into trunk. (check-in: f77609d4 user: drh tags: trunk)
20:28
Add additional test data and documentation to the fuzzer virtual table. (Closed-Leaf check-in: a6a81d4f user: drh tags: word-fuzzer)
19:14
Changes to wal tests so that they work with DEFAULT_AUTOVACUUM defined. (check-in: b477852f user: dan tags: trunk)
18:39
Merge the multiplexer enhancements back into the trunk. (check-in: 2c125710 user: drh tags: trunk)
18:12
Add a script that will break the amalgamation source file up into 4 or 5 smaller source files, each 32K lines or fewer, and a single "sqlite3-all.c" source file that #includes the others. (check-in: 5d34e64d user: drh tags: trunk)
17:53
Change analyze7.test so that it works without SQLITE_ENABLE_STAT2 defined. (check-in: 9415201c user: dan tags: trunk)
16:50
When simulating an error in the close() system call, close the file descriptor anyway. Otherwise long running tests leak too many file-descriptors and crash. (check-in: 81ddbf43 user: dan tags: trunk)
15:43
Merge latest trunk changes. (check-in: d184cf00 user: dan tags: sessions)
15:30
If the sessions module is being built as part of the amalgamation, do not try to include sqliteInt.h and vdbeInt.h. (check-in: f87bfe6e user: dan tags: sessions)
15:15
Ensure that it is not possible to add a column to a system table using ALTER TABLE. (check-in: d9707ef8 user: dan tags: trunk)
14:26
Merge the ANALYZE-index enhancement into trunk. (check-in: 7e237aea user: drh tags: trunk)
14:22
Removed dependency on sqliteInt.h so that multiplex VFS shim can be compiled as loadable module. (Closed-Leaf check-in: 718f1ad7 user: shaneh tags: multiplex-enhancements)
14:04
Test cases for ANALYZE-index. (Closed-Leaf check-in: 365896cb user: drh tags: analyze-idx)
13:29
Move a variable declaration inside an #ifdef to avoid a compiler warning. (check-in: 7a6d05df user: drh tags: trunk)
11:56
In os_unix.c, do not return SQLITE_BUSY to SQLite following an error in fcntl(F_UNLCK), regardless of the value of errno. (check-in: ff6dfe6e user: dan tags: trunk)
09:04
Fix some problems in os_unix.c when compiled with ENABLE_LOCKING_STYLE on OSX. Also some minor issues with test scripts. (check-in: 8088031b user: dan tags: trunk)
02:26
Fix two compiler errors associated with non-standard compile-time options. (check-in: e3bf2d5c user: drh tags: trunk)
01:38
Fix a compiler warning and an unreachable branch. Restore 100% branch test coverage. (check-in: 4dc148bb user: drh tags: trunk)
2011-03-31
15:11
Enable/disable support. (check-in: b3c6d9aa user: shaneh tags: multiplex-enhancements)
13:14
Add tests and fixes for SELECT multiplex_control(op, val); (check-in: fee9734c user: shaneh tags: multiplex-enhancements)
05:31
Additional test cases; Round chunk size up to a multiple of max page size; (check-in: 36e364a3 user: shaneh tags: multiplex-enhancements)
02:03
Change the ANALYZE command so that it will accept an index name as its argument and only reanalyze that one index. A quick smoke-test works. Need to study the implications to the query planner and test corner cases. (check-in: c8f9edd9 user: drh tags: analyze-idx)
2011-03-30
21:04
Add the SQLITE_ENABLE_PREUPDATE_HOOK compile-time option. (check-in: 66345214 user: drh tags: sessions)
21:03
Updates to multiplex.test script; misc. bug fixes; (check-in: c41ff235 user: shaneh tags: multiplex-enhancements)
19:08
Further tests for os_unix.c. (check-in: a84f7711 user: dan tags: trunk)
17:25
Disable the truncate optimization if there is a preupdate hook. (check-in: d051694e user: drh tags: sessions)
17:07
Add documentation to the sqlite3_preupdate_hook() interface and its relatives. (check-in: 8180f288 user: drh tags: sessions)
14:54
Do not generate sqlite_stat1 entries for empty tables when running ANALYZE. Ticket [83ea97620bd31016451] (check-in: 3a27af5b user: drh tags: trunk)
02:03
Merge in all the latest changes from trunk. (check-in: b11d941e user: drh tags: sessions)
01:43
Move to an O(NlogN) algorithm for the priority queue. An insertion sort was way too slow. (check-in: 7958cbba user: drh tags: word-fuzzer)
2011-03-29
23:41
Add support for rowid. (check-in: 2cf4158f user: drh tags: word-fuzzer)
18:28
Add tests to syscall.test and sysfault.test. (check-in: 3d2de011 user: dan tags: trunk)
18:21
The first simple test-case appears to be working now. (check-in: dd41155b user: drh tags: word-fuzzer)
15:40
Fix a problem whereby following an IO error in CommitPhaseTwo() of a multi-file transaction the b-tree layer could be left in TRANS_WRITE state, causing problems later on. (check-in: dbe569a0 user: dan tags: trunk)
15:00
If the keyword "unordered" appears at the end of the SQLITE_STAT1.STAT column for an index, then use that index for equality lookups only, never for range queries or sorting. (Closed-Leaf check-in: 3b964155 user: drh tags: unordered-index-hack)
14:08
Further improvements to the fuzzer. It still is not quite working. Pausing to work on other things.... (check-in: 5f2f2fce user: drh tags: word-fuzzer)
10:04
Fix a problem in the unix VFS implementation of xNextSystemCall(). Also some typos that prevent compilation when HAVE_POSIX_FALLOCATE is defined. (check-in: bc6cce81 user: dan tags: trunk)
05:06
In-progress changes - do not use; Removed prefix support; Added file control interface to enable/disable and adjust chunk size; added app-def function for same; (check-in: bc02d0c1 user: shaneh tags: multiplex-enhancements)
01:47
Fix the documentation for the sqlite3_column_*_name() functions to describe that the information can be invalidated when a prepared statement is reprepared by the first invocation of an sqlite3_step() for a particular execution cycle. (check-in: 7270f80a user: drh tags: trunk)
2011-03-28
19:10
Add test infrastructure (and some tests) to inject faults into os_unix.c using the new xSetSystemCall interface. (check-in: 0e1d20df user: dan tags: trunk)
2011-03-26
19:04
Added most of the logic. Simple test runs without segfaulting but does not give the correct answer. (check-in: fb4c31ea user: drh tags: word-fuzzer)
15:05
Skeleton code for the word-fuzzer virtual table. (check-in: ea3a4ee1 user: drh tags: word-fuzzer)
2011-03-25
19:06
Improve coverage of session module a bit more. (check-in: 4255a9f6 user: dan tags: sessions)
10:52
Improve coverage of session module code. (check-in: 666123c8 user: dan tags: sessions)
2011-03-24
17:43
Minor change to sqlite3Utf8Read() to make consistent with READ_UTF8() usage and avoid implementation defined usages of <<. Added some additional UTF-8 test cases. (check-in: 7173b392 user: shaneh tags: trunk)
17:37
Fix problem with tableapi.test on Windows. (check-in: 69fe0c87 user: shaneh tags: trunk)
16:53
Fix handling of schema changes mid-session. (check-in: 76d2d2ad user: dan tags: sessions)
16:04
Fix handling of schema mismatches in sqlite3session.c so that it matches the docs in sqlite3session.h. (check-in: 506a0d7a user: dan tags: sessions)
11:22
Store primary key definitions for modified tables in changesets. Add the sqlite3changeset_pk() API to extract this data from a changeset iterator. (check-in: 54298ee5 user: dan tags: sessions)
01:34
The changes to fix [f7b4edece25c9948] mean that the schema is always loaded whenever a prepared statement is running. This means that a couple of branches can be eliminated and one operand of OP_ParseSchema can be removed. (check-in: b6e268fc user: drh tags: trunk)
2011-03-23
22:54
Fix a signed/unsigned comparison compiler warning. (check-in: c81da6f9 user: drh tags: trunk)
22:51
Update the test_vfstrace.c shim to conform to the new VFS interface for xSetSystemCall and xGetSystemCall. (check-in: ad4dc7b9 user: drh tags: trunk)
22:48
Merge in all the latest changes from the trunk, and especially the interface changes to the SystemCall methods of the VFS. (check-in: 9c3a6e47 user: drh tags: sessions)
22:02
Change the xSetSyscall methods of the VFS so that they do not cast object pointers into function pointers. Fix other unrelated compiler warnings. (check-in: e059152a user: drh tags: trunk)
18:22
Increase the upper bound on SQLITE_MAX_ATTACHED from 30 to 62. (check-in: 7aaf8772 user: drh tags: trunk)
17:10
Fix a bug in fts4 to do with matchinfo and deferred tokens. (check-in: 30d42dc6 user: dan tags: trunk)
16:03
Add the "indirect flag" to the changeset blob format. Also the sqlite3session_indirect() API. (check-in: 1feaf2d3 user: dan tags: sessions)
11:16
In the shell, make sure the ".log" command has at least one argument. (check-in: 1ed5e361 user: drh tags: trunk)
10:52
Fix a numbering issue in rtree6.test. Add a couple of extra tests. (check-in: 0b7668a7 user: dan tags: trunk)
10:38
Change the rtree module to support queries with multiple comparison operators (i.e. > or <) of the same type on a single column. (check-in: 387b55aa user: dan tags: trunk)
2011-03-22
18:45
Add API function sqlite3_preupdate_depth(), for determining the depth of the trigger stack from within a pre-update callback. (check-in: bdea7089 user: dan tags: sessions)
16:54
Fix a crash that can follow an OOM when "all tables" are registered with a session module. (check-in: 183c236e user: dan tags: sessions)
15:21
If a NULL pointer is passed to sqlite3session_attach() in place of a table name, attach all database tables to the session object. (check-in: e9037e4e user: dan tags: sessions)
12:08
Add OOM tests and related fixes for the session module. (check-in: 06048a68 user: dan tags: sessions)
02:03
Fix a couple typos for consistency in sessions documentation. (check-in: 510198f1 user: shaneh tags: sessions)
2011-03-21
19:41
Remove some unreachable code in sqlite3session.c. Add test cases. (check-in: 39cdfa53 user: dan tags: sessions)
17:17
Merge in the sqlite3_db_config() enhancements for enabling and disabling FKs and triggers from trunk. (check-in: 2b3c8b9d user: drh tags: sessions)
17:15
Add the ability to enable and disable foreign key constraints and triggers using calls to sqlite3_db_config(). (check-in: 09e167f9 user: drh tags: trunk)
16:17
Add start of fault-injection tests for session module. Fix some bugs related to the same. (check-in: 32e95164 user: dan tags: sessions)
11:55
Clarify handling of NULL values in PK columns in sqlite3session.h. Add tests and fixes for the same. (check-in: aed42730 user: dan tags: sessions)
11:03
Fix session module problems with real (floating point) values. (check-in: a192d04f user: dan tags: sessions)
07:23
Fix some typos in sqlite3session.h. (check-in: 0853e530 user: dan tags: sessions)
2011-03-20
11:20
Documentation format updates to sqlite3session.h. (check-in: f227f602 user: dan tags: sessions)
2011-03-19
19:19
Fix a problem involving session objects and attached databases. (check-in: ad91d300 user: dan tags: sessions)
18:46
Fix a bug in changeset generation code. (check-in: 825df75b user: dan tags: sessions)
17:07
Move session1.test from test/ to ext/session/. (check-in: c4436a93 user: dan tags: sessions)
16:26
Fix a problem with resizing a hash table in sqlite3session.c. (check-in: 6e5907e1 user: dan tags: sessions)
15:37
Fix some bugs in sqlite3changeset_apply(). (check-in: 7250318d user: dan tags: sessions)
08:38
Fix a problem with INTEGER PRIMARY KEY columns and the pre-update hook. (check-in: 24d4d5dd user: dan tags: sessions)
02:37
Merge the fix to ticket [f7b4edece25c99485] into the sessions branch. (check-in: 1b736ac2 user: drh tags: sessions)
02:04
Add a test case to verify that ticket [f7b4edece25c994857] is fixed. (check-in: eedbcf0a user: drh tags: trunk)
2011-03-18
21:55
Add a generation counter to the Schema object and enhance OP_VerifySchema to also check the Schema generation. Fix for ticket [f7b4edece25c99]. (check-in: 36c04dd1 user: drh tags: trunk)
18:03
Hold the database mutex for the duration of an sqlite3changeset_apply() call. Also for the duration of all sqlite3session_xxx() calls. (check-in: c615c38c user: dan tags: sessions)
16:47
Fixes for compiler warnings. Minor code cleanup. (check-in: 9604d130 user: drh tags: sessions)
16:13
Further improvements to documentation in sqlite3session.h. (check-in: 07019bb9 user: dan tags: sessions)
15:13
Fix a memory allocation issues in the preupdate hook so that the hook.test script runs clean in valgrind. (check-in: bd94f4c8 user: drh tags: sessions)
13:05
Update comments in sqlite3session.h. More to come. (check-in: e73e9082 user: dan tags: sessions)
12:35
Merge all the latest trunk enhancements into the sessions branch. (check-in: 94fd5bb6 user: drh tags: sessions)
2011-03-17
19:20
Change to the session module to use user-defined primary keys instead of rowids when collecting changes. (check-in: 6614cfcb user: dan tags: sessions)
16:45
Update the implementation of ".testctrl" in the command-line shell to use a look-up table rather than a long sequence of if-elses. Shorten source code lines of shell.c to 80 characters or less. (check-in: 54bacb95 user: drh tags: trunk)
01:58
Comment enhancement to better explain the logic in the "x IS NULL" optimization. (check-in: 869f8947 user: drh tags: trunk)
01:34
Enhances to the query planner such that "x IS NULL" constraints take the STAT2 statistics into account, just like "x=VALUE" constraints. (check-in: 23531768 user: drh tags: trunk)
2011-03-16
19:59
Add the sqlite3_preupdate_new() API, for retrieving the new.* values from within a pre-update callback. (check-in: 526545c4 user: dan tags: sessions)
18:54
Additional interpretation of flags and constants in the VFS trace output. (check-in: 3e984195 user: drh tags: trunk)
17:05
Add the -vfstrace option to the usage error message in the shell. (check-in: baca45c5 user: drh tags: trunk)
16:56
Add the VFS-trace shim. (check-in: f49a9ef3 user: drh tags: trunk)
09:49
Remove the sqlite3_transaction_hook() API. (check-in: b0015a1c user: dan tags: sessions)
2011-03-15
19:08
Make the "unix-excl" VFS work exactly like "unix" if the database file is read-only. (check-in: d9846834 user: drh tags: trunk)
18:35
Fix an out-of-order variable declaration in shell.c. (check-in: 72570846 user: drh tags: trunk)
16:37
Fix some bugs and other code issues in the session module. (check-in: f2930840 user: dan tags: sessions)
04:45
Allow multiplex file names to be preceeded by prefix of the form ":multiplex:chunksize:maxchunks:" Still work to be done, though it compiles and prefixes are ignored. (check-in: cfa4a2f7 user: shaneh tags: multiplex-enhancements)
02:55
Fix cut-and-paste typo in debugging print statement in winMutexTry(). (check-in: def98fd2 user: shaneh tags: trunk)
2011-03-14
19:49
Fix handling of return values from the conflict handler. Document the conflict handler arguments and return codes in sqlite3session.h. (check-in: cbbb274e user: dan tags: sessions)
13:54
Merge the unix-excl VFS into the trunk. This merge also adds the -vfs option to the command-line shell. (check-in: 3934b004 user: drh tags: trunk)
2011-03-12
18:10
In the "unix-excl" VFS, use the heap for shared memory, since only a single process is able to read or write the database. (Closed-Leaf check-in: a05a6d40 user: drh tags: unix-excl)
17:22
Fix some issues with UPDATE changes in the session module. (check-in: 57862efe user: dan tags: sessions)
17:02
Add the new optional "unix-excl" VFS. This VFS grabs an exclusive lock on the database preventing other processes from accessing it, but continues to allow other database connections from the same process. (check-in: 00051c32 user: drh tags: unix-excl)
04:58
More tests for SQLITE_OMIT_UNIQUE_ENFORCEMENT and minor change to implementation. (check-in: b8699943 user: shaneh tags: trunk)
2011-03-11
19:05
Add the sqlite3changeset_apply() function. Does not yet handle all cases. (check-in: 2b19be7b user: dan tags: sessions)
16:15
Remove an unused field from the unix sqlite3_file object. (check-in: f957f23a user: drh tags: trunk)
2011-03-10
21:48
Simplification of tests and more added for SQLITE_OMIT_UNIQUE_ENFORCEMENT tests. (check-in: 75a38411 user: shaneh tags: trunk)
21:13
Skip unique constraint enforcement if compiled with SQLITE_OMIT_UNIQUE_ENFORCEMENT. (check-in: ba85bf8c user: shaneh tags: trunk)
03:54
Minor clean-up of previous mem5 allocator fix. (check-in: 36438423 user: shaneh tags: trunk)
2011-03-09
21:36
Fix issue with mem5 allocator when min request size is larger thatn 2^30. (check-in: d7dae06f user: shaneh tags: trunk)
21:02
Omit unnecessary OP_Next and OP_Prev operators when uniqueness constraints guarantee that the code will only make one pass through the loop. (check-in: f000c9b2 user: drh tags: trunk)
11:17
Add a function to the session extension invert a changeset. (check-in: 75d5dff7 user: dan tags: sessions)
11:04
Updates to the OS/2 implementation from Rich Walsh. (check-in: dc46156a user: drh tags: trunk)
2011-03-08
19:22
Add start of sessions feature. (check-in: 269a81a3 user: dan tags: sessions)
16:39
Merge the syscall-override changes into trunk. (check-in: 36d79e6f user: drh tags: trunk)
14:05
Unix errno integer can vary from one system to the next. So do not depend on specific errno values in test cases. (check-in: ddb747d3 user: drh tags: trunk)
13:06
Fix two compiler warnings. No functional code changes. (check-in: c829868a user: drh tags: trunk)
02:38
Fix additional cases of possible signed integer overflow, especially with regard to negation. (check-in: 2d5800bd user: drh tags: trunk)
2011-03-06
21:54
Another minor simplification brought to light by clang. (check-in: 3bfbf026 user: drh tags: trunk)
21:28
Remove dead code identified by the clang static analyzer. (check-in: 01a79d5a user: drh tags: trunk)
2011-03-05
21:41
Simplifications to the overflow-free multiplier. Also remove some commented-out code that was left in that subroutine by mistake on the previous check-in. (check-in: 55fc25fd user: drh tags: trunk)
20:59
Fix all known instances of signed-integer overflow. Within SQL expressions, integer overflow now forces coercion to floating point. The shift operators work with any integer right-hand operand with negative values reversing the direction of the shift. (check-in: abf21394 user: drh tags: trunk)
13:54
Fix an instance of signed arithmetic overflow and an one bit-shift overflow. Mark six other signed arithmetic overflow locations that need fixing. (check-in: 04abab71 user: drh tags: trunk)
2011-03-04
15:43
Handle EINTR errors from open(). (Closed-Leaf check-in: a7d176b2 user: drh tags: syscall-override)
00:56
Do a better job of choosing the join table order when the tables having very different numbers of rows. (check-in: 952f5e8c user: drh tags: trunk)
2011-03-03
20:06
Add the experimental sqlite3_transaction_hook() API. (check-in: 093d8cd8 user: dan tags: sessions)
2011-03-02
22:07
Fix quoting of the result in rtreeB.test. (check-in: c6532b35 user: drh tags: trunk)
19:06
Add additional VFS methods to retrieve system call pointers and to get a list of all changeable system calls. (check-in: 38558363 user: drh tags: syscall-override)
18:01
Add more system calls to the set that can be overridden in os_unix.c. Also merge in recent fixes from trunk. (check-in: 80fac2a6 user: drh tags: syscall-override)
17:54
Fix bugs in [7b6e30e6a7] that only show up on Mac. (check-in: ec55e8c6 user: drh tags: trunk)
15:44
Make sure the rtreenode() testing and analysis routine in the RTREE extension can handle 64-bit rowids. This fix is in response to a message on the mailing list. (check-in: 24602557 user: drh tags: trunk)
15:09
Proof-of-concept prototype for the proposed xSetSystemCall extension method on the VFS. (check-in: 92b5a76a user: drh tags: syscall-override)
02:08
Log all error from close() in os_unix.c to sqlite3_log() but do not attempt to report errors back up to the application. Update the unix error logging to put the most important information earlier in the message. (check-in: 7b6e30e6 user: drh tags: trunk)
2011-03-01
18:42
Add the experimental sqlite3_preupdate_hook() API. (check-in: 6145d7b8 user: dan tags: sessions)
2011-02-25
03:25
Comment out some code in os_unix.c that only runs on MacOSX with SQLITE_ENABLE_LOCKING_STYLE. (check-in: 4e50b036 user: drh tags: trunk)
2011-02-24
21:10
Fix a typo in a comment. No changes to code. (check-in: af475618 user: drh tags: trunk)
2011-02-23
22:39
Reserve a range of bits in the SQLITE_OPEN_xxxx bit vector for future expansion. (check-in: 9b904654 user: drh tags: trunk)
14:33
Automatically retry system calls that fail with EINTR. This is a backport of the changes from [b9d29ea385bafc] and [af9ba2a6d2c379]. (Leaf check-in: 8609a15d user: drh tags: branch-3.7.4)
14:05
Backport the os_unix.c error logging enhancements from check-in [01076528a43b61a]. (check-in: a4333b15 user: drh tags: branch-3.7.4)
14:00
Fix a typo in the robust_flock() macro for systems without EINTR. (check-in: af9ba2a6 user: drh tags: trunk)
13:53
The robust_flock() fix that accidently included some unrelated, though harmless changes. I should follow my own checklist! (Closed-Leaf check-in: e701efbd user: drh tags: mistake)
13:33
Retry selected system calls on unix when they fail with EINTR. (check-in: b9d29ea3 user: drh tags: trunk)
2011-02-22
03:34
When a stale schema-cookie is seen, expire only the one statement that encountered the bad cookie, not every statement on the database connection. Ticket [b72787b1a7cea1f] (check-in: 1bca0a7e user: drh tags: trunk)
2011-02-21
17:49
Fix a problem with "EXPLAIN QUERY PLAN SELECT count(*) FROM tbl". (check-in: 9f9f3288 user: dan tags: trunk)
11:46
Have os_unix.c call sqlite3_log() following errors in certain system calls. (check-in: 01076528 user: dan tags: trunk)
2011-02-20
21:03
Pull in the fix to STAT2 processing from check-in [70a3d81742f]. (check-in: 692aafb1 user: drh tags: branch-3.7.4)
03:40
Do not report the database corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54]. Backport by cherrypick of [00c4596f0b270]. (check-in: e2616004 user: drh tags: branch-3.7.4)
03:32
Make sure the change-counter and SQLite-version fields of the header are set correctly even after vacuuming. This is a backport of changes [0be92a7576] and [04fa1e1690] to address ticket [5d863f876ee]. (check-in: 442be135 user: drh tags: branch-3.7.4)
03:27
Do not raise an SQLITE_CORRUPT error in Recoverymode if the database size in the header is larger than the physical file size. This is a cherrypick of checkin [114640d920e16c8] (check-in: 7701b077 user: drh tags: branch-3.7.4)
03:22
Backport the sqlite3.h generator fix so that it works with newer versions of Fossil. See [3513bf6ee090d9b] for the original. (check-in: 29597a71 user: drh tags: branch-3.7.4)
03:20
Backport the changes of checkin [cf86affcb7d308949] ("Make wal_checkpoint a no-op if a prior checkpoint has already copied all WAL content into the database.") to the 3.7.4 release. (check-in: e6e540ab user: drh tags: branch-3.7.4)
03:11
Backport the SQLITE_PROTOCOL fix and the extra defensive measure to version 3.7.4. (check-in: bcc22c4b user: drh tags: branch-3.7.4)
2011-02-19
23:18
An SQLITE_PROTOCOL error counts as a locking error for verification purposes. (check-in: e87d499a user: drh tags: trunk)
17:02
Change a testcase() added by the previous checkin into an assert(). (check-in: 6f3dad32 user: drh tags: trunk)
16:51
Add testcase macros to verify that all return values from walTryBeginRead() are tested. (check-in: 262b6fca user: drh tags: trunk)
15:22
Changes to make WAL more robust against SQLITE_PROTOCOL errors. (check-in: fd578a32 user: drh tags: trunk)
14:19
Changes which attempt to address an obscure SQLITE_PROTOCOL error. (Leaf check-in: 1725aa75 user: drh tags: wal-trace-375)
2011-02-18
17:23
Fix the sqlite3ValueFromExpr() routine so that it returns SQLITE_NOMEM on an OOM when trying to extract a NULL. (check-in: 1061e94f user: drh tags: trunk)
2011-02-17
15:58
Remove a no-op code path from sqlite3ExprIsInteger(). Replace it with an assert() that proves it always does nothing. (check-in: 7af66d1b user: drh tags: trunk)
13:52
Remove an assert() that was made redundant by the previous checkin. (check-in: 21db7191 user: drh tags: trunk)
13:33
Add an ALWAYS() around a always-true test in where.c. (check-in: 8123283e user: drh tags: trunk)
2011-02-16
23:32
Fix harmless compiler warnings in the query planner. (check-in: 31fc4ba6 user: drh tags: trunk)
01:23
Add "do_not_use_codec" logic to some of the TCL based test cases that read/write directly to the DB. (check-in: edd27669 user: shaneh tags: trunk)
2011-02-14
03:49
Skip some tests in capi3e.test when compiled with SQLITE_OMIT_UTF16. (check-in: b04304b9 user: shaneh tags: trunk)
2011-02-11
22:54
Add a NEVER() around a test that is believed to always be false. (check-in: f7e2ea33 user: drh tags: trunk)
20:52
Skip flattening if subquery has LIMIT and outer query is DISTINCT. Fix for ticket [752e1646fc]. (check-in: 55973999 user: shaneh tags: trunk)
06:59
Fix a bug in the new WHERE-clause processing that tries to use an index to resolve IS NOT NULL constraints when SQLITE_ENABLE_STAT2 is defined. The bug could cause memory overruns and segfaults. The bug was new to the code and has not appeared in an official release. Found during structural testing. (check-in: a5c36b9f user: drh tags: trunk)
03:56
Allow an index paired with an IS NULL constraint to be used for sorting under the condition that the index be treated as a non-unique index. (check-in: d78949fc user: drh tags: trunk)
02:43
Disable unused NULL tests when SQLITE_ENABLE_STAT2 is not in use. (check-in: 5ecd1178 user: drh tags: trunk)
2011-02-10
21:08
Add .testctrl option to CLI. (check-in: f85afa0e user: shaneh tags: trunk)
18:56
Split the documentation for sqlite3_wal_checkpoint_v2() and its constants onto separate pages. No changes to code. (check-in: 0ef8ffd1 user: drh tags: trunk)
17:46
Prevent a segfault when automatic indices try to use a column with an unknown collating function. Ticket [77aa3b1e6592582e38605d36]. This check-in also removes some stray \r characters unrelated to the problem. (check-in: f01030a0 user: drh tags: trunk)
01:49
This is a version of the SQLite 3.7.5 release with Apple's changes for MacOS. (check-in: 55d2e55b user: drh tags: apple-osx)
00:08
Refactor the cost function in the query planner. Give extra cost (thus reduce likelihood of selection) to full table scans. (check-in: 878da276 user: drh tags: trunk)
2011-02-09
19:55
Make sure code *compiles* with each OMIT and ENABLE option. Mostly changes to test modules. (check-in: 7cc515ed user: shaneh tags: trunk)
18:19
Do not report corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54]. (check-in: 00c4596f user: dan tags: trunk)
15:25
Update Makefile.in for fts3_aux changes. (check-in: 38b7cb33 user: shaneh tags: trunk)
03:04
Use macros to define the relative costs of search and seek operations when computing costs in the query planner. Current constants seems wrong and need to be fixed, but doing so will alter test results. Need more experimentation to determine accurate relative costs. (check-in: 5f2ec44b user: drh tags: trunk)
03:03
Simplifications to the sqlite3_wal_checkpoint_v2() logic. (check-in: 652b8835 user: drh tags: trunk)
2011-02-07
23:56
Cleanup to the OP_Checkpoint opcode. (check-in: f611a5a8 user: drh tags: trunk)
16:24
Fix some test cases in walfault.test. Extend one test case to restore code coverage. Add wal5.test to the "coverage-wal" permutation. (check-in: f83b07ac user: dan tags: trunk)
15:12
Change blocking-checkpoint tests so that they run once using "PRAGMA wal_checkpoint" and once using calls to sqlite3_wal_checkpoint_v2(). Also fix edge cases surrounding the output variables set by wal_checkpoint_v2(). (check-in: 5a4b6652 user: dan tags: trunk)
2011-02-05
15:47
Ensure fts4aux can handle a table name in single or double quotes as a constructor argument. (check-in: 929d62e4 user: dan tags: trunk)
14:37
Add test cases for fts4aux. Fix a bug affecting fts3 tables with multiple columns. (check-in: dc511e60 user: dan tags: trunk)
2011-02-04
18:56
Change fts4aux to (additionally) report on term frequency in individual columns of an fts table. (check-in: 3996f92a user: dan tags: trunk)
14:28
Significant changes have occurred since the 3.7.5 release so go ahead and increase the version number to 3.7.6. (check-in: 999c915a user: drh tags: trunk)
06:36
Merge the stat2 query planner enhancements into the trunk. (check-in: 499edcbc user: drh tags: trunk)
05:47
If a deferred foreign key constraint fails on a statement that is not part of a larger transation, make sure that the statement fully ends so that subsequent invocations of the same statement will not pass the constraint because they think the transaction is not closed. This is a merge of the deferred-fk-quirk branch together with a test case. (check-in: 2f94d462 user: drh tags: trunk)
00:51
Fix the ATTACH command so that the filename argument can be any expression and so that if authorizer callback gets a NULL pointer for the filename if the filename argument is anything other than a string literal. Ticket [9013e13dba5b58c7] (check-in: e64e1453 user: drh tags: trunk)
2011-02-03
12:48
Extra tests for fts4 compress/uncompress hooks. Fix some minor problems with the same. (check-in: 80225abe user: dan tags: trunk)
10:56
Extra tests for the fts4aux module. (check-in: cfc47569 user: dan tags: trunk)
01:26
Fix a superlock test case to conform to the new wal_checkpoint returns. (check-in: 8bf2d51b user: drh tags: trunk)
2011-02-02
19:17
Fix minor problems with the output of "PRAGMA wal_checkpoint". In both code and tests. (check-in: aef61036 user: dan tags: trunk)
17:30
Optimize handling of equality and range constraints on the "term" column of an fts4aux table. (check-in: 386701de user: dan tags: trunk)
16:34
Merge in the blocking-checkpoint enhancement, including the new sqlite3_wal_checkpoint_v2() interface and the PRAGMA wal_checkpoint(full) statement. (check-in: bac7342c user: drh tags: trunk)
04:40
Merge fts4aux branch. (check-in: c6d9f7d8 user: dan tags: trunk)
04:26
Add missing file fts3_aux.c. (Closed-Leaf check-in: 0147d973 user: dan tags: fts4aux)
2011-02-01
18:59
Remove extra instances of the text "checked out." from sqlite.h.in. Also add new file fts3_aux.c to mksqlite3c.tcl. (check-in: 9897da22 user: dan tags: fts4aux)
18:00
Fix a problem causing builds with SQLITE_OMIT_WAL defined to fail. (check-in: b9b48dd8 user: dan tags: fts4aux)
17:55
Fix a case in fts4 where a corrupt %_stat table could lead to a crash. (check-in: 4ade96ce user: dan tags: fts4aux)
16:34
Add virtual table module "fts4aux", used to inspect the full-text index of an fts4 table directly. Also add the "compress" and "uncompress" fts4 options. (check-in: b010ddcc user: dan tags: fts4aux)
00:04
Version 3.7.5 (check-in: ed759d5a user: drh tags: trunk, release, version-3.7.5)
2011-01-28
17:02
Bogus release candidate. (Closed-Leaf check-in: 38ca1daa user: drh tags: mistake)
16:45
Add test script pagerfault3.test. No changes to code or existing tests. (check-in: 682fe41e user: dan tags: trunk)
15:46
Change pager_truncate() to a different method for extending files while also ensuring that writes are page-size and page-aligned. (check-in: 874bc884 user: drh tags: trunk)
15:07
When extending a database file, do so by writing one or more page-size chunks of data to the file, instead of just a single byte to the end. (check-in: 58577135 user: dan tags: trunk)
03:13
Reactivate the analyze5.test script. (Closed-Leaf check-in: a2a9f640 user: drh tags: stat2-enhancement)
01:57
Change the weighting of binary searches on tables to 1/10th the cost of a search on an index. Change the assumed reduction in search space from a indexed range constraint from 1/3rd to 1/4th. Do not let the estimated number of rows drop below 1. (check-in: 4847c6cb user: drh tags: stat2-enhancement)
2011-01-27
18:48
Pull in all the changes from trunk up through the version 3.7.5 release candidate 1. (check-in: 09d6c91d user: drh tags: apple-osx)
14:35
SQLite version 3.7.5 release candidate 1 (check-in: 35ac78f5 user: drh tags: trunk)
2011-01-26
19:46
Update all built-in VFSes to return SQLITE_OK for the SQLITE_FCNTL_SYNC_OMITTED file-control operation. Also change the xFileControl methods to return SQLITE_NOTFOUND for unrecognized operation codes. (check-in: 6f2c72a0 user: drh tags: trunk)
15:23
Update test file mutex1.test to account for [e3b500fb5d]. (check-in: c86e46f4 user: dan tags: trunk)
13:28
More mutexes around another sqlite3StatusAdd() call. (check-in: e3b500fb user: drh tags: trunk)
13:24
Add a mutex around an sqlite3StatusAdd() call to prevent the pagecount overflow measurements from getting off in multithreaded applications. (check-in: 3d8b298d user: drh tags: trunk)
07:25
Update mutex1.test so that it works with the memsubsys1 permutation (pagecache memory). Change a few instances of SQLITE_MUTEX_STATIC_LRU2 in comments and test code to STATIC_PMEM. (check-in: 456bd5c6 user: dan tags: trunk)
06:13
Changes to exclusive2.test to make it more deterministic. (check-in: 84b0c2bc user: dan tags: trunk)
00:07
Rename the PCache1.mxPinned field to n90pct (since it is 90% of nMax) in order to distinguish it from PGroup.mxPinned. Fix the computation of n90pct so that it does not overflow adversely on excessively large cache sizes. (check-in: c85202ba user: drh tags: trunk)
2011-01-25
18:30
Fix new compiler warnings in pcache1.c that were introduced by the recent performance enhancement patches of [e14649301138b684]. (check-in: c17703ec user: drh tags: trunk)
18:19
Add a missing call to sqlite3PagerSync() removed by [ce552d975] to the backup code. (check-in: 1965b853 user: dan tags: trunk)
16:48
Make sure the return code from doing an xSync is correctly initialized so that a valid return code is produced regardless of the path taken through the logic. (check-in: f12b5d76 user: drh tags: trunk)
16:20
Change the name of SQLITE_FCNTL_SYNC to SQLITE_FCNTL_SYNC_OMITTED and only send it when PRAGMA synchronous=OFF. Add better documentation to explain what that file-control opcode is used for. (check-in: 64914980 user: drh tags: trunk)
13:43
Fix a couple of typos in comments. No changes to actual code. (check-in: 9167fdb3 user: dan tags: trunk)
11:33
Fix a broken assert() in pager.c. (check-in: 13108ce1 user: dan tags: trunk)
09:54
Fix a problem in memsubsys1.test. Modifications to test code only. (check-in: 7ef3f7cb user: dan tags: trunk)
04:34
Shave a few cycles so that performance is better than 3.7.4 in speed tests. (check-in: e1464930 user: drh tags: trunk)
2011-01-24
20:18
Modify the test_quote.c demonstration shim so that it works when SQLITE_THREADSAFE=0 is defined. (check-in: b70bccca user: drh tags: trunk)
19:45
Fix a typo in the documentation for sqlite3_snprintf(). No changes to code. (check-in: 8d106541 user: drh tags: trunk)
19:14
Fix a harmless compiler warning (a shadowed local variable) in analyze.c. (check-in: a1ad7fb3 user: drh tags: trunk)
17:46
Restructuring and generalizing analyze5.test. The whole script is currently disabled and will need to be reenabled prior to merging with trunk. (check-in: 31fcc706 user: drh tags: stat2-enhancement)
16:00
Ensure that if a deferred FK constraint is violated by a statement that creates its own implicit transaction, the statement is not an "active-write" after sqlite3_step() returns. (Closed-Leaf check-in: 8063197e user: dan tags: deferred-fk-quirk)
15:11
Change the cost estimator in the query planner to take into account the logN rowid lookup cost when going from an index to a table. (check-in: b442525b user: drh tags: stat2-enhancement)
2011-01-22
13:32
Modify the trace callback mechanism so that SQL commands executed from within virtual table or user function callbacks are passed to the trace callback without parameter expansion and enclosed in SQL comments. (check-in: a764915b user: dan tags: trunk)
00:10
Add the ability to use indices for constraints of the form "x IS NOT NULL" when sqlite_stat2 is available and most entries for column x are NULL. (check-in: 5d5bddd2 user: drh tags: stat2-enhancement)
2011-01-21
18:25
Change sqlite3StrAccumAppend() to use realloc instead of malloc. (check-in: 380f61df user: dan tags: trunk)
18:18
Adjustments to the result row estimator for the IN operator so that it gives the same estimates as the equivalent OR operator. Test cases for the same. (check-in: c82cb9c0 user: drh tags: stat2-enhancement)
16:27
Make use of histogram data to make better estimates for the number of rows that will be returned from "x IN (v1,v2,v3,...)" constraints. (check-in: fd3977a2 user: drh tags: stat2-enhancement)
15:52
Add options to test command [do_faultsim_test] to support testing VFS implementations. (check-in: 503ad889 user: dan tags: trunk)
14:37
Add the ability to use indices when a range contraint is bounded on the lower end by NULL. (check-in: f73a167b user: drh tags: stat2-enhancement)
2011-01-20
20:36
Update ANALYZE test cases to check out the use of histograms for equality constraints. (check-in: c7b59afa user: drh tags: stat2-enhancement)
16:52
Use histogram data to improve the row-count estimates on equality constraints. (check-in: 6bfc5c69 user: drh tags: stat2-enhancement)
02:56
The first of a planned series of enhancements to the query planner that enable it to make better use of sqlite_stat2 histograms when the table has many repeated values. (check-in: 2cd374cd user: drh tags: stat2-enhancement)
2011-01-19
21:58
Comment improvements in pcache1.c. No changes to code. (check-in: 9660a0a2 user: drh tags: trunk)
2011-01-18
17:34
Pull over all the latest trunk changes. (check-in: ca86d04b user: drh tags: wal-trace-375)
17:03
Do not use mutexes in the pcache implementation unless SQLITE_ENABLE_MEMORY_MANAGMENT is defined. This is a performance enhancement. A side effect is that pcaches will not steal pages from one another unless ENABLE_MEMORY_MANAGEMENT is set, or unless SQLITE_THREADSAFE=0. (check-in: e5ca59e6 user: drh tags: trunk)
16:13
Get all test cases working with the mutex-free-pcache implementation. (Closed-Leaf check-in: 2dc98d29 user: drh tags: mutex-free-pcache)
15:17
Do not use SQLITE_MUTEX_STATIC_MEM2 since it has been reused as STATIC_OPEN. Instead, create a new static mutex STATIC_PMEM which is an alias for the unused STATIC_LRU2. (check-in: f1cf02ef user: drh tags: mutex-free-pcache)
2011-01-17
21:32
Here is a completely new implementation of the mutex-free-pcache. This one uses a common code base and automatically selects whether or not to use mutexes depending on compile-time and start-time options. (check-in: d094a1bf user: drh tags: mutex-free-pcache)
18:30
Fix a typo in the documentation for sqlite3_stmt_readonly(). (check-in: 56417a33 user: drh tags: trunk)
17:42
Add the SQLITE_OMIT_AUTORESET compile-time option which if enabled causes the sqlite3_step() routine to return SQLITE_MISUSE if it is called after it has previously returned anything other than SQLITE_ROW, SQLITE_BUSY, or SQLITE_LOCKED. (check-in: 053ce76d user: drh tags: trunk)
02:24
Add back an ALWAYS() to regain full test coverage. (check-in: b93f6f3e user: drh tags: trunk)
2011-01-16
22:37
On a backup from a smaller to a larger page size, do not begin committing the transaction until the source pages after the pending byte have been copied. (check-in: 612e2599 user: drh tags: trunk)
00:56
Make sure the change-counter and SQLite-version fields of the header are set correctly even when doing a VACUUM with locking_mode=EXCLUSIVE. Ticket [5d863f876ee9561b]. (check-in: 04fa1e16 user: drh tags: trunk)
2011-01-15
21:42
Make sure the change counter and SQLite version numbers in the header are set correctly, even when running in WAL mode and when VACUUMing in WAL mode. Ticket [5d863f876ee9561b9]. (check-in: 0be92a75 user: drh tags: trunk)
18:11
Fix the change-counter increment for WAL pages so that it works even when invoked from xStress. Ticket [5d863f876ee9561b95e2]. (Closed-Leaf check-in: 228e7c34 user: drh tags: bug-5d863f87)
17:12
Increment the change counter and update the SQLite version number whenever page 1 is added to the WAL. Ticket [5d863f876ee9561b9] (check-in: c1e0d09c user: drh tags: bug-5d863f87)
16:52
Add a test case demonstrating the problem described by ticket [5d863f876e]. (check-in: af54963f user: dan tags: trunk)
2011-01-14
16:43
Rerun autoconf to bring the configure script up-to-date. (check-in: 14217464 user: drh tags: trunk)
16:12
Provide an alternative and experimental pcache implementation that avoids the use of mutexes at the expense of using more memory. (Closed-Leaf check-in: 2ea5bd12 user: drh tags: mutex-free-pcache)
15:17
Fix comments, including some documentation comments, in the page cache logic. No code changes. (check-in: c80e9c1a user: drh tags: trunk)
11:51
Fix a bug in test code (test_vfs.c). (check-in: 772a3845 user: dan tags: trunk)
2011-01-13
16:10
Fix a typo on the sqlite3_open_v2() documentation. (check-in: b0add45a user: drh tags: trunk)
11:20
Fix a couple of crashes in fts3 that can occur if the database contents are inconsistent. (check-in: 811e12cd user: dan tags: trunk)
10:58
Fix a segfault that can occur in matchinfo if an fts4 table contains mostly zero-length documents. Specifically, if the table contains more rows than it does bytes of text. (check-in: fe904766 user: dan tags: trunk)
2011-01-12
17:56
Do not raise an SQLITE_CORRUPT error in Recoverymode if the database size in the header is larger than the physical file size. This facilitates recovery of a database in which the database size field has been corrupted. (check-in: 114640d9 user: drh tags: trunk)
2011-01-11
17:40
Merge accidentally created fork. (check-in: b7d080b8 user: dan tags: trunk)
17:39
Add the SQLITE_FCNTL_SYNC file-control. (check-in: b3f2f465 user: dan tags: trunk)
17:38
Change the page size of the destination database in a backup, if it is changeable, prior to starting the backup. (check-in: a5e4e0ca user: drh tags: trunk)
16:09
If a rollback is attempted in journal_mode=off mode, force SQLite to discard the contents of the pager cache before processing any subsequent queries. (check-in: ece7efce user: dan tags: trunk)
12:46
Fix the sqlite3.h generator script so that it generates the correct SQLITE_SOURCE_ID string with the latest versions of Fossil that include fractional seconds on the date/time stamp. (check-in: 3513bf6e user: drh tags: trunk)
01:42
A proposed change to the sqlite3_step() API such that it will only auto-reset following an SQLITE_BUSY or SQLITE_LOCKED error. Calls after any other result other than SQLITE_ROW will return SQLITE_MISUSE. (Closed-Leaf check-in: d1b3c54f user: drh tags: step-autoreset)
2011-01-10
21:01
Update pager requirements to account for the ZIPVFS extension. (check-in: d94e59b5 user: drh tags: trunk)
2011-01-07
02:50
Reorder the fields in private structures in an effort to reduce alignment gaps and thus make the structures smaller, and to put frequently accessed fields first. Also update some obsolete comments. Valgrind shows a very slight performance improvement. (check-in: 378a1d13 user: drh tags: trunk)
2011-01-06
15:51
Enhance the showdb tool to show overflow page pointers at the end of overflow cells. (check-in: cda5eab1 user: drh tags: trunk)
01:26
Enhance the showdb tool to show a btree page layout. Add limit checks so that overflow content does not overflow the buffer. (check-in: 57ffa07e user: drh tags: trunk)
2011-01-05
21:46
Fix a bug in the showdb utility: the serial types for BLOB and TEXT where reversed. (check-in: 65a13faf user: drh tags: trunk)
21:20
Enhancements to the "showdb" debugging tool. Add the ability to display the content of a cell. (check-in: e9023a4e user: drh tags: trunk)
13:43
Increment the version number to 3.7.5. (check-in: 9ec3896e user: drh tags: trunk)
12:50
Add detailed error logging to WAL in an effort to track down an obscure SQLITE_PROTOCOL problem. This code is intended for debugging and not for release. (check-in: 2c2afdd0 user: drh tags: wal-trace-375)
12:20
Add the sqlite3_vsnprintf() interface. (check-in: fc67adea user: drh tags: trunk)
2011-01-04
20:06
Fix a null-pointer dereference that can occur on an OOM error while running ANALYZE with SQLITE_ENABLE_STAT2. (check-in: 73128d4e user: drh tags: trunk)
19:01
Fix the ANALYZE command so that it takes collating sequences into account when gathering index statistics. (check-in: a5867cfc user: drh tags: trunk)
17:57
The ANALYZE command now counts at all rows of an index, even those containing NULL values. A valid sqlite_stat1 entry is created even if the index contains nothing but NULLs. (check-in: 824c8dd3 user: drh tags: trunk)
2010-12-29
18:24
Have testfixture invoke C routine Zipvfs_Init() when creating a new interpreter if SQLITE_ENABLE_ZIPVFS is defined. (check-in: 430635da user: dan tags: trunk)
10:49
Fix some off-by-one errors in the comments for API functions create_function() and value_blob(). No changes to code or tests. (check-in: 7ded90ba user: dan tags: trunk)
2010-12-24
15:49
Reduce the number of calls to sqlite3_realloc() made by fts3 when querying for position information of a term prefix. (check-in: 7088d945 user: dan tags: trunk)
2010-12-22
21:48
Do not include <sys/mmap.h> if SQLITE_OMIT_WAL is defined. (check-in: b82e85ec user: drh tags: trunk)
2010-12-21
21:28
Add test cases for the new lookaside hit and miss status outputs. Add the output of lookaside hit and miss to the command-line shell statistics. (check-in: b0888047 user: drh tags: trunk)
20:36
Merge into the trunk the experimental enhancements to sqlite3_db_status() for measuring lookaside memory allocator performance. (check-in: 8c3b06c2 user: drh tags: trunk)
00:20
Remove the obsolete compile-time option SQLITE_THREAD_OVERRIDE_LOCK from the autoconf makefile. Needed only for LinuxThreads, which we no longer support. (check-in: 09f6c053 user: drh tags: trunk)
00:16
Rearrange a variable declaration in the proxy locking code to avoid a harmless compiler warning on recent MacOS versions. (check-in: 39bbd355 user: drh tags: trunk)
2010-12-20
17:00
Clarify the documentation of the SQLITE_STATUS_MALLOC_COUNT parameter to sqlite3_status(). (check-in: 3b41bcc3 user: drh tags: trunk)
15:51
Add additional DBSTATUS options for measuring the hit and miss rates against the lookaside memory pool - information useful in tuning the lookaside size. Currently experimental pending analysis of performance impact. (Closed-Leaf check-in: 34613f1d user: drh tags: experimental)
2010-12-17
14:03
Add the "-heap" option to the command-line shell - to allocate a fixed heap for use with SQLITE_ENABLE_MEMSYS5. (check-in: 74fff692 user: drh tags: trunk)
01:00
Fix minor typos in the sqlite3_backup documentation. (check-in: df430be5 user: drh tags: trunk)
2010-12-16
20:35
Improvements to the documentation for sqlite3_backup. No code changes. (check-in: f83609f4 user: drh tags: trunk)
19:52
Fix an assertion fault that can only occur if SQLITE_ENABLE_STAT2 is defined and the constant folding optimization is disabled using sqlite3_test_control(). Problem introduced by [ad8bc68197f2b4] but we missed it prior to the 3.7.4 release due to taking shortcuts and skipping tests in the release checklist. (check-in: 70a3d817 user: drh tags: trunk)
02:06
Make wal_checkpoint a no-op if a prior checkpoint has already copied all WAL content into the database. This prevents a concurrent write to the database from resetting the wal-index out from under the WalIterator of the checkpoint as it is initializing. (check-in: cf86affc user: drh tags: trunk)
2010-12-15
21:02
Enhanced comments in wal.c and declare some procedure parameters "const". No changes to the generated code. (check-in: d0e4375b user: drh tags: trunk)
18:54
When registering the built-in LIKE and GLOB functions, make sure that they are tagged with SQLITE_UTF8 so that if other application-defined LIKE and GLOB implementations are provided for UTF16, then the appropriate function will be selected. (check-in: e1660764 user: drh tags: trunk)
2010-12-10
17:06
Fix a performance regression in matchinfo(). (check-in: fa37d8eb user: dan tags: trunk)
2010-12-09
19:15
Add support for the SQLITE_DEFAULT_FOREIGN_KEYS compile-time option. (check-in: c959945a user: drh tags: trunk)
18:55
Mention the SQLITE_DEFAULT_WAL_AUTOCHECKPOINT compile-time option in the documentation for the sqlite3_wal_autocheckpoint() interface. (check-in: 5a52dd59 user: drh tags: trunk)
2010-12-08
18:30
Update the sqlite3_stmt_readonly() interface so that its output is well-defined for all prepared statements, and so that it gives the correct result for VACUUM. (check-in: 9c19b7ae user: drh tags: trunk)
03:28
The command-line shell ignore errors in sqlite3_close() when shutting down. (check-in: 925332c3 user: drh tags: trunk)
00:02
Changes to the shell which should, in theory, allow it to work with libeditline as an alternative to libreadline. (check-in: e474fd9e user: drh tags: trunk)
2010-12-07
23:24
Improved documentation for SQLITE_FCNTL_FILE_POINTER. (check-in: 43935548 user: drh tags: trunk)
20:14
Version 3.7.4 (check-in: a586a4de user: drh tags: trunk, release, version-3.7.4)
17:12
Work around restriction in Windows file locking. (check-in: fe441df9 user: shaneh tags: trunk)
16:39
Fix a bug in the demo "superlock" code preventing locks from being released in some circumstances. (check-in: 65c39379 user: dan tags: trunk)
15:49
Merge in all changes to the trunk through version 3.7.4rc3. (check-in: d2ccf7fc user: drh tags: apple-osx)
14:59
Version 3.7.4 release candidate 3 (check-in: 11c74c0d user: drh tags: trunk)
14:32
Run some of the existing test scripts with optimizations disabled as part of all.test. (check-in: b0634d2f user: dan tags: trunk)
07:57
Add tests to tkt-80ba201079.test. (check-in: c370338c user: dan tags: trunk)
2010-12-06
21:09
Fix the build so that it once again works with SQLITE_OMIT_SHARED_CACHE and SQLITE_OMIT_AUTOVACUUM. (check-in: fabcb6b9 user: drh tags: trunk)
21:06
Add the ability to disable constant factoring using sqlite3_test_control(). Add a TCL interface to this new capability and add tests cases to the TCL test scripts to actually use the new capability. (check-in: ad8bc681 user: drh tags: trunk)
18:59
Back out part of the previous change that was not really necessary in order to fix [80ba201079ea60], and which in fact serves no useful purpose. (check-in: fa9eef86 user: drh tags: trunk)
18:50
Initialize all constants at the very beginning of a prepared statement. Do not allow constant initialization to occur once control flow has a chance to diverge, to avoid the possibility of having uninitialized registers. Ticket [80ba201079ea60807]. (check-in: c5c53152 user: drh tags: trunk)
17:11
Have sqlite3_blob_bytes() return 0 following a failed call to sqlite3_reopen_blob(). (check-in: 476a8b49 user: dan tags: trunk)
2010-12-04
19:35
Version 3.7.4 release candidate 2. (check-in: 40756fe1 user: drh tags: trunk)
18:20
Fix a memory leak in fts3 that can occur in an OOM condition. (check-in: 507027b7 user: dan tags: trunk)
2010-12-03
18:57
Remove an over-zealous call to memAboutToChange() from OP_MustBeInt. OP_MustBeInt will never invalidate the Mem.z pointer so the memAboutToChange() call is not necessary. (check-in: 841cf7a7 user: drh tags: trunk)
15:41
Version 3.7.4 release candidate 1 (check-in: 2e800cb8 user: drh tags: trunk)
15:04
Add tests for fts3 to backcompat.test. (check-in: b4eafde8 user: dan tags: trunk)