SQLite

Timeline
Login

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

100 check-ins occurring around 2ff824e58ce8b8f6.

2010-05-01
08:30
Add test case demonstrating deadlock during recovery of very large log files. No fix yet. (check-in: 63ea318eb1 user: dan tags: wal)
00:59
Do not allow journal_mode=WAL if the underlying VFS does not support xShmOpen. (check-in: d1fcccecdc user: drh tags: wal)
2010-04-30
22:28
Merge in changes from the trunk. (check-in: 76bf0eee1f user: drh tags: wal)
21:03
Avoid assertion faults in queries using indices with redundant columns. Ticket [3dbdcdb14e7f41]. (check-in: 946e06cd2a user: drh tags: trunk)
17:47
Change the SHM VFS logic in os_unix.c so that it does not hold an exclusive lock n the mapped memory when also holding a CHECKPOINT lock. This improves concurrency between readers and checkpointers. (check-in: 8660cda6f8 user: drh tags: wal)
17:28
Remove some obsolete debugging parameters. (check-in: a012aed498 user: drh tags: wal)
17:05
Fix a problem with resizing the wal-index mapping after the mapping has been extended by an external process. (check-in: 79d356fea6 user: dan tags: wal)
16:50
Fix a problem with calculating the required size of the wal-index when appending frames. (check-in: 9526b11130 user: dan tags: wal)
16:48
In the debugging output for SHM-LOCK in os_unix.c, use symbolic names for the lock states rather than raw numbers. (check-in: 2afc33de2b user: drh tags: wal)
16:41
Fix a problem in the previous commit. Both unixShm.lockState and unixShm.readLock should be set to READ when downgrading from a WRITE to a READ lock (check-in: 90119fecbc user: dan tags: wal)
16:38
Fix a bug whereby upgrading from a READ_FULL to a WRITE lock, and then back to a read lock was dropping all WAL locks. (check-in: 55f5af5e17 user: dan tags: wal)
16:24
Reapply commits [837d82a929] and [c05e7dca17] that were accidentally overwritten. (check-in: 598de52700 user: dan tags: wal)
16:19
Add xShmXXX() methods to the test VFS in test_devsym.test. (check-in: 1d20342424 user: dan tags: wal)
16:12
Correctly record the fact that the SHM lock reached PENDING if it did so but failed to reach CHECKPOINT. (check-in: d9250e84ac user: drh tags: wal)
15:54
Fix a couple uninitialized variables in the xShmLock method of the unix VFS. Improved debugging logic for xShmLock. (check-in: 69567c5fca user: drh tags: wal)
15:49
When closing a WAL connection, attempt an exclusive lock on the database file. If the lock is obtained, checkpoint the database and delete the wal and wal-index files. (check-in: c05e7dca17 user: dan tags: wal)
15:24
If a reader attempts to upgrade to a writer, but is not reading the most recent database snapshot, return SQLITE_BUSY. (check-in: 837d82a929 user: dan tags: wal)
14:39
Separate the concepts of underlying storage size and mapped size in the VFS shared-memory implementation. (check-in: 4cbe49f13f user: drh tags: wal)
11:43
Add a missing walIndexUnmap() call to the checkpoint code. Change a couple of SQLITE_CANTOPEN constants to SQLITE_CANTOPEN_BKPT. (check-in: 1f9e8c5c27 user: dan tags: wal)
10:24
Fix an assert() in sqlite3WalRead(). (check-in: 2e7a0050e1 user: dan tags: wal)
10:06
Add missing mutexes to unixShmClose(). (check-in: a4741cb54d user: dan tags: wal)
09:52
Fix a couple of assert() statements in os_unix.c and wal.c. Combine sqlite3WalIsDirty() with sqlite3WalUndo(). (check-in: a8f958be80 user: dan tags: wal)
09:32
Add a missing walIndexUnmap() to sqlite3WalSnapshotOpen(). (check-in: 72b95fde15 user: dan tags: wal)
06:02
Merge latest bugfix into wal branch. (check-in: 265e66e698 user: dan tags: wal)
05:57
Zero the "immediate FK constraint counter" associated with a statement object when sqlite3_reset() is called. Fix for [c39ff61c43]. (check-in: f660be615a user: dan tags: trunk)
02:13
The first 6 WAL tests now work. It's a start. (check-in: a92c1851da user: drh tags: wal)
2010-04-29
22:34
Refactor wal.c to use the VFS. This check-in compiles and links and works ok as long as you leave WAL turned off, but WAL does not work. (check-in: 62db5fa3b6 user: drh tags: wal)
16:40
Untested implementation of the shared-memory dead-man-switch. (check-in: 706611283e user: drh tags: wal)
15:17
Progress towards a VFS that will support WAL. Locking code is in place but is untested. Still no support for the DMS. (check-in: 1bde41cf08 user: drh tags: wal)
14:58
Close all open database connections at the end of wal.test. (check-in: 3cc55a7568 user: dan tags: wal)
14:51
Fix a bug in the WAL checkpoint code causing SQLite to use an inconsistent cache in a subsequent transaction. (check-in: d1cadeed4e user: dan tags: wal)
08:47
Add tests to walthread.test. (check-in: 9e891e7543 user: dan tags: wal)
2010-04-28
18:17
Add a test to walthread.test for changing between WAL and rollback modes. (check-in: da229e44bd user: dan tags: wal)
17:49
Merge two "wal" leaves. (check-in: 13d2d5a66e user: dan tags: wal)
17:48
Change walthread.test so that tests can be run with either multiple threads or multiple processes. (check-in: 25f85f6872 user: dan tags: wal)
17:21
Changes to the interface design for the xShmLock method of the VFS. (check-in: 348409de26 user: drh tags: wal)
14:42
Rename the sqlite3_log_hook() to sqlite3_wal_hook(). Added comments to wal.h. (check-in: bbc385111b user: drh tags: wal)
2010-04-27
18:49
Merge two "wal" leaves. (check-in: 8c2d43babd user: dan tags: wal)
18:43
Add a test to check that a checkpointer releases its locks before returning, even if it has been prevented by a conflicting lock from checkpointing the database. (check-in: be44349d2b user: dan tags: wal)
14:37
Fix a problem with identifying a corrupt database in WAL mode. (check-in: c8658da446 user: dan tags: wal)
11:49
Add the xShmRelease() method to the VFS. The os_unix.c implementation of the shared memory logic is still non-functional. (check-in: ed715b47c5 user: drh tags: wal)
06:49
Run trans.test and avtrans.test as part of the "wal" permutation. (check-in: c889331051 user: dan tags: wal)
05:42
Fix a problem that occurs when one process causes the log-summary file to grow and then a second process attempts to read the database. (check-in: b51a5f8bc6 user: dan tags: wal)
01:56
Merge in recent changes from the trunk (check-in: 7a0ac682c3 user: drh tags: wal)
2010-04-26
19:17
Optimization: Convert an ORDER BY clause into a no-op if the query also contains a GROUP BY clause that will force the same output order. (check-in: ca9d86baf7 user: drh tags: trunk)
17:42
Do not attempt to set journal_mode=wal on :memory: or temp file databases. (check-in: 30d0134454 user: dan tags: wal)
17:36
Change the default_cache_size pragma to always store a positive value. (check-in: 36fb2cae75 user: drh tags: trunk)
17:30
Identify the SQLite version meta-value entry in the db-header output of showdb. (check-in: 245d934b72 user: drh tags: trunk)
16:57
Fixes for problems with small caches and SAVEPOINT rollback in WAL mode. (check-in: 6a944f028d user: dan tags: wal)
16:47
Further enhancements to the showdb utility: A page number followed by "b" causes a btree decoding to occur on the page. (check-in: 2ff824e58c user: drh tags: trunk)
15:44
Enhancements to the showdb.c utility program. Automatically detect the page size and adjust the display accordingly. Add the "dbheader" display option. (check-in: 23eb408b5d user: drh tags: trunk)
12:39
Add the "wal" permutation to run existing test files savepoint.test and savepoint2.test in WAL mode. (check-in: 205e5d8ac0 user: dan tags: wal)
10:40
Add mutexes to fix a race condition in wal.c. This isn't a very good fix. (check-in: 3d159939cc user: dan tags: wal)
00:19
Change the names of the log.c and log.h source files to wal.c and wal.h. (check-in: 56fe5d7624 user: drh tags: wal)
00:04
Begin moving WAL-specific I/O into the VFS. This checkin contains VFS infrastructure but it is untested and is not yet hooked up to the WAL. The version number is bumped to 3.7.0 because of the VFS extension. (check-in: f5e615c28c user: drh tags: wal)
2010-04-25
20:58
Remove an unreachable branch from the function initialization logic. (check-in: 064d3ddd61 user: drh tags: trunk)
2010-04-24
19:07
Add comment explaining checksum mechanism. (check-in: 3e9ef5153e user: dan tags: wal)
18:44
Fix bugs in WAL mode rollback. (check-in: 31215969f5 user: dan tags: wal)
14:33
Merge with [0291ed974d]. Merge with [0291ed974d]. Merge with [0291ed974d]. (check-in: a352f6285e user: dan tags: wal)
14:02
When commands such as ALTER TABLE and VACUUM use SQL internally, make sure they use only the built-in functions and not application-defined overrides for those functions. (check-in: 0291ed974d user: drh tags: trunk)
04:53
Merge with [e79dac3c2f]. (check-in: 1e793d3a6d user: dan tags: wal)
04:49
Reserve some space at the start of the log-summary file to apply locks to. (check-in: a031aa1fa0 user: dan tags: wal)
2010-04-23
19:15
Fixes and tests for backup of a WAL database. (check-in: 480d12db4c user: dan tags: wal)
14:29
Merge of notify.c changes from experimental. Reset stored blocking connection when registered unlock_notify callback is cleared. (check-in: e79dac3c2f user: shaneh tags: trunk)
11:44
Add very simple test cases for backup and VACUUM of WAL databases. More to come. (check-in: 1077d8130b user: dan tags: wal)
2010-04-22
19:14
Create a version of the log checksummer that works on big-endian platforms. Remove the 512KB size limit on the log-summary. (check-in: 5d6d4423d1 user: dan tags: wal)
06:27
Further tests and changes related to switching between WAL and rollback modes. (check-in: 1236318477 user: dan tags: wal)
2010-04-21
18:37
Tests for (and changes to) the code to switch between WAL and rollback modes. (check-in: 9f4f933f2c user: dan tags: wal)
11:43
If, after obtaining a SHARED lock, there exists a *-wal file in the file-system, use WAL mode. This is necessary to recover from a crash that damages the first page of the database file. (check-in: 33cabf271b user: dan tags: wal)
06:19
Minor changes to test cases to account for the fact that databases with read/write versions of 2 are now understood. (check-in: 278ed41e1d user: dan tags: wal)
2010-04-20
18:53
Use the read and write version fields of the database header to mark a database as operating in wal-mode. (check-in: 96bef18c14 user: dan tags: wal)
2010-04-19
18:03
Add the sqlite3_log_hook() interface for scheduling checkpoints. (check-in: 9bda601455 user: dan tags: wal)
2010-04-17
18:50
Add some comments regarding file-locks to log.c. (check-in: 9d51c3b754 user: dan tags: wal)
17:34
Do not sync any files in wal mode if "PRAGMA synchronous=off" is set. If files are synced, pass either SQLITE_SYNC_FULL or SQLITE_SYNC_NORMAL to the xSync() callback as configured by "PRAGMA fullfsync". (check-in: 0ae91b0008 user: dan tags: wal)
16:10
It is possible for sqlite3.pUnlockConnection to be non-NULL when sqlite3.pBlockingConnection is NULL, as the notify1.test script demonstrates. (Closed-Leaf check-in: 95ff76ef67 user: drh tags: experimental)
15:45
Merge with trunk commit [3e646e3f4c]. (check-in: 43463970f5 user: dan tags: wal)
15:42
In synchronous=normal mode, do not sync the log after every transaction. In synchronous=full mode, sync the log and add any extra frames required to avoid blast-radius related problems after each transaction. (check-in: 9bc9b68473 user: dan tags: wal)
12:53
Change sqlite3_step() so that it automatically calls sqlite3_reset() instead of returning SQLITE_MISUSE when invoked on a prepared statement that previously returned any value other than SQLITE_ROW. (check-in: 3e646e3f4c user: drh tags: trunk)
12:31
Enhancements to wal-mode locking scheme. (check-in: 8549c28649 user: dan tags: wal)
2010-04-16
22:05
Changes for branch coverage of notify.c. Fixed quirk of unlock_notify() where it would still think it was blocked after a callback was cleared (even after the transaction on the blocking connection was closed). (check-in: c54e8dad01 user: shaneh tags: experimental)
13:59
Change the log file format to include a small (12 byte) header at the start of the file. (check-in: 9865d14d60 user: dan tags: wal)
11:30
Fix bug in log recovery (last frame in log was being ignored). Also remove an incorrect assert statement. (check-in: 67d2a89ec2 user: dan tags: wal)
2010-04-15
23:24
Disable query flattening when the outer query is a compound SELECT and the inner query has a LIMIT clause. Ticket [02a8e81d44]. (check-in: f96782b389 user: drh tags: trunk)
16:45
Allow writers to write dirty pages to the log mid-transaction in order to free memory. (check-in: ecd828f969 user: dan tags: wal)
13:33
Merge two leaves on the WAL branch. (check-in: c9ed66cc39 user: dan tags: wal)
13:29
The query planner fix of check-in [33b1f584ef] should have been on the trunk. (check-in: f538d759be user: drh tags: trunk)
12:36
Fix a problem in the result set size estimation logic of the query planner - a problem introduced by the two previous changes. (check-in: 33b1f584ef user: drh tags: wal)
10:58
Change the way checksums are calculated. (check-in: 84955c2e9c user: dan tags: wal)
02:37
Bring over the recent query planner enhancements from the trunk. (check-in: 82969f27e5 user: drh tags: wal)
01:04
Further refinements to table order selection on join query planning. (check-in: defaf0d99a user: drh tags: trunk)
2010-04-14
19:01
The query planner uses non-indexable WHERE clause terms to reduce the estimated number of output rows, then uses the estimated number of output rows as a tie-breaker when choosing table order. (check-in: b87cb0c2bd user: drh tags: trunk)
18:50
Add tests and fix bugs in WAL locking mechanism. (check-in: c18077f246 user: dan tags: wal)
18:06
Add tests to check inter-process WAL locking. (check-in: 9435f31358 user: dan tags: wal)
15:49
Improve the logLockRegion() function in log.c. (check-in: 5e9dd3bd8e user: dan tags: wal)
11:23
Fixes for locking issues in WAL mode. (check-in: a9617eff39 user: dan tags: wal)
2010-04-13
19:27
Add experimental locking scheme. (check-in: 3f958e87c3 user: dan tags: wal)
15:30
Fix an uninitialized variable in readDbPage of pager.c. (check-in: f4e1150fed user: drh tags: wal)
11:56
Remove old code to interpret an argument (no longer used) to "PRAGMA checkpoint". (check-in: 27dc5977c1 user: dan tags: wal)
11:45
Fix other problems in the WAL test scripts. (check-in: dcb31181db user: dan tags: wal)
11:35
Fix test script issues preventing walthread.test from running. (check-in: d90b1dde07 user: dan tags: wal)