]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
15 years agoWhen a lock fails due to an I/O error (not an SQLITE_BUSY) then the checkpoint
drh [Wed, 2 Jun 2010 20:38:20 +0000 (20:38 +0000)] 
When a lock fails due to an I/O error (not an SQLITE_BUSY) then the checkpoint
should fail.

FossilOrigin-Name: c6eb0a27270df69018576232d8f97c16d63d8f6e

15 years agoFix a problem with rolling back to a savepoint opened before the writer decided to...
dan [Wed, 2 Jun 2010 18:59:03 +0000 (18:59 +0000)] 
Fix a problem with rolling back to a savepoint opened before the writer decided to wrap the log file.

FossilOrigin-Name: 6b4aed6aae7dc9e92807d27375cbe1e83c15841b

15 years agoIf an error occurs while writing frames to the log to commit a transaction, do not...
dan [Wed, 2 Jun 2010 17:15:24 +0000 (17:15 +0000)] 
If an error occurs while writing frames to the log to commit a transaction, do not mark the pages as clean in the cache. Otherwise, the subsequent rollback does not roll them back (leaving the client to continue with a cache that makes it appear that the transaction was committed - inconsistent with the database on disk).

FossilOrigin-Name: cb571c1b71a37b3a10d640987c77a6eec508235d

15 years agoAdded implementation of vfslog_time() for Windows testing.
shaneh [Wed, 2 Jun 2010 16:40:54 +0000 (16:40 +0000)] 
Added implementation of vfslog_time() for Windows testing.

FossilOrigin-Name: b3109f85bde0b24bfbcfe6c0f7bbe973be196c1d

15 years agoUpdated wal2.test for windows testing.
shaneh [Wed, 2 Jun 2010 16:39:53 +0000 (16:39 +0000)] 
Updated wal2.test for windows testing.

FossilOrigin-Name: c3606f3985e4ab38479409c13f3a01d1be4f8189

15 years agoMake sure the directory used by os_unix.c for shared-memory files is always
drh [Wed, 2 Jun 2010 15:59:05 +0000 (15:59 +0000)] 
Make sure the directory used by os_unix.c for shared-memory files is always
the same, regardless of individual client permissions and environment
variable settings.

FossilOrigin-Name: f97bd520f06a16c61ccdd9ebeda7e138896b9ac2

15 years agoWhen walTryBeginRead() encounters an I/O error trying to set a lock
drh [Wed, 2 Jun 2010 15:43:18 +0000 (15:43 +0000)] 
When walTryBeginRead() encounters an I/O error trying to set a lock
(as opposed to SQLITE_BUSY) be sure to propagate that error back up
the call stack.

FossilOrigin-Name: aa2c2b67a7f50c97a44cca1af5c437bf5410869c

15 years agoChanges to make WAL more robust against SHM locking failures and OOM errors.
drh [Wed, 2 Jun 2010 14:45:51 +0000 (14:45 +0000)] 
Changes to make WAL more robust against SHM locking failures and OOM errors.

FossilOrigin-Name: ebf4041383c3cdddb5861960359abd209d4a1028

15 years agoIn the rowhash.test, make sure global variables are cleared prior to use.
drh [Wed, 2 Jun 2010 14:43:30 +0000 (14:43 +0000)] 
In the rowhash.test, make sure global variables are cleared prior to use.

FossilOrigin-Name: 28efe0a40405567f3eaf334b6603282d5adac792

15 years agoUndo one of the "const" markers from the previous check-in because the
drh [Wed, 2 Jun 2010 12:58:22 +0000 (12:58 +0000)] 
Undo one of the "const" markers from the previous check-in because the
value needs to be changable, even if it is not actually ever changed in
the current implementation.

FossilOrigin-Name: c24ac3563f46fc6bcf7e45ee171afd3ae7d2faa8

15 years agoAdd some 'const' markers to static data that is really constant.
dan [Wed, 2 Jun 2010 05:53:53 +0000 (05:53 +0000)] 
Add some 'const' markers to static data that is really constant.

FossilOrigin-Name: e7073e23b80e7cae0c76d42f014ee9b2d40a8f2f

15 years agoThe shared-memory used by WAL on linux now really is shared memory in /dev/shm.
drh [Tue, 1 Jun 2010 21:02:51 +0000 (21:02 +0000)] 
The shared-memory used by WAL on linux now really is shared memory in /dev/shm.
On other unix flavors, the file is in a temporary directory rather than in the
same directory as the database.

FossilOrigin-Name: fc18c4aadb908c3b6f9b6481a2efca6a0daadc64

15 years agoChanges to the way faults are injected into xShmXXX VFS calls.
dan [Tue, 1 Jun 2010 19:15:18 +0000 (19:15 +0000)] 
Changes to the way faults are injected into xShmXXX VFS calls.

FossilOrigin-Name: 716d99f3929b466c7a17190e0f18de8ab0e7f1fa

15 years agoChange the OOM and IO error test cases in walfault.test so that each test case runs...
dan [Tue, 1 Jun 2010 17:46:38 +0000 (17:46 +0000)] 
Change the OOM and IO error test cases in walfault.test so that each test case runs both types of error simulation.

FossilOrigin-Name: b627e1536822bb7e3ef91867661a53be0efc13ef

15 years agoDelay the decision to restart the log file until data is actually ready to be written...
dan [Tue, 1 Jun 2010 15:44:57 +0000 (15:44 +0000)] 
Delay the decision to restart the log file until data is actually ready to be written to the log file (instead of at the start of a write transaction).

FossilOrigin-Name: b1abfaaf5309cc0d0dda4fb2c237862c8cf83261

15 years agoThe incremental checkpoint feature is not perfect yet, but it is working
drh [Tue, 1 Jun 2010 15:24:29 +0000 (15:24 +0000)] 
The incremental checkpoint feature is not perfect yet, but it is working
well enough to merge it into the trunk.

FossilOrigin-Name: 1d3e569e59ba89cc167f0a48951ecd82f10322ba

15 years agoMerge with [15abbc3416]. wal-incr-ckpt
dan [Tue, 1 Jun 2010 14:30:49 +0000 (14:30 +0000)] 
Merge with [15abbc3416].

FossilOrigin-Name: f4b9003a2d3db88eaabb4b291e6cea8e8ea6ff51

15 years agoIf an attempt to get a read-lock on the WAL fails with SQLITE_BUSY_RECOVER, call...
dan [Tue, 1 Jun 2010 14:12:45 +0000 (14:12 +0000)] 
If an attempt to get a read-lock on the WAL fails with SQLITE_BUSY_RECOVER, call the busy-handler at the btree level.

FossilOrigin-Name: ce64496509a213c08c9dedae2a7a456b393d22e5

15 years agoFix a bug introduced by the previous check-in but only seen if
drh [Tue, 1 Jun 2010 13:17:44 +0000 (13:17 +0000)] 
Fix a bug introduced by the previous check-in but only seen if
SQLITE_ENABLE_EXPENSIVE_ASSERTS is turned on.

FossilOrigin-Name: 9c9ec8994bf701249efce6c7bb911de4525808c8

15 years agoFix an off-by-one boundary-value issue in walCleanupHash().
drh [Tue, 1 Jun 2010 12:58:41 +0000 (12:58 +0000)] 
Fix an off-by-one boundary-value issue in walCleanupHash().

FossilOrigin-Name: f039552e6330b6a04281748f985b41937f534bd0

15 years agoDo not hold the shared-memory mutex in os_unix.c if returning NULL.
dan [Tue, 1 Jun 2010 11:08:56 +0000 (11:08 +0000)] 
Do not hold the shared-memory mutex in os_unix.c if returning NULL.

FossilOrigin-Name: 9622dd468c8914262e9d8bd8dbca9e22ec6ee75c

15 years agoIf the checkpoint fails to obtain an exclusive lock on one of the read-lock bytes...
dan [Tue, 1 Jun 2010 10:44:28 +0000 (10:44 +0000)] 
If the checkpoint fails to obtain an exclusive lock on one of the read-lock bytes, do not consider this an error.

FossilOrigin-Name: 9e95e35728cf69a0ae50e774d7f6c71a41b17d97

15 years agoFixes to the test cases in wal2.test.
dan [Tue, 1 Jun 2010 07:51:47 +0000 (07:51 +0000)] 
Fixes to the test cases in wal2.test.

FossilOrigin-Name: cd5fbcbce8b55f24c0bf349b179c26e333ff7172

15 years agoComment edits and cleanup in wal.c. No functional code changes.
drh [Tue, 1 Jun 2010 01:08:08 +0000 (01:08 +0000)] 
Comment edits and cleanup in wal.c.  No functional code changes.

FossilOrigin-Name: e8e666ab8273f5db5265f0773b39820f75b6df1a

15 years agoAttempt to get the filectrl.test script running.
drh [Tue, 1 Jun 2010 00:28:42 +0000 (00:28 +0000)] 
Attempt to get the filectrl.test script running.

FossilOrigin-Name: e46a8f2b752f86c4d8942ee125210516026ffdc2

15 years agoFix os_unix.c so that it will compile and build on a Mac.
drh [Tue, 1 Jun 2010 00:03:57 +0000 (00:03 +0000)] 
Fix os_unix.c so that it will compile and build on a Mac.

FossilOrigin-Name: bc707c83e5f9849d9d201d695d0d071ca9ed93cb

15 years agoFix issues with locking_mode=EXCLUSIVE in WAL.
drh [Mon, 31 May 2010 20:28:37 +0000 (20:28 +0000)] 
Fix issues with locking_mode=EXCLUSIVE in WAL.

FossilOrigin-Name: 8deba0cebd135a18da68530fab9e7d19dc21ddcb

15 years agoAdd an "isInit" field in the wal-index header that must be non-zero for
drh [Mon, 31 May 2010 18:24:19 +0000 (18:24 +0000)] 
Add an "isInit" field in the wal-index header that must be non-zero for
a valid header.  Use this to detect an uninitialized wal-index.

FossilOrigin-Name: a16fde190183d1ae252d1aa305b23fdb88c603dc

15 years agoFix an inconsistent #ifdef in wal.c. Fix os_unix.c so that it does not allow
drh [Mon, 31 May 2010 16:56:14 +0000 (16:56 +0000)] 
Fix an inconsistent #ifdef in wal.c.  Fix os_unix.c so that it does not allow
moving an SHM lock directly exclusive to shared without going through unlocked.

FossilOrigin-Name: 552658da2845c2323167b6c7db6e5c00090f280c

15 years agoAvoid dropping the checkpoint lock after a recovery run as a precursor to a checkpoin...
dan [Mon, 31 May 2010 16:41:53 +0000 (16:41 +0000)] 
Avoid dropping the checkpoint lock after a recovery run as a precursor to a checkpoint operation.

FossilOrigin-Name: cc25cfa04630a43c1de26f2dbdacbe46c110a2b5

15 years agoZero the checkpoint header as the last step of successful WAL recovery. Avoid an...
dan [Mon, 31 May 2010 16:17:54 +0000 (16:17 +0000)] 
Zero the checkpoint header as the last step of successful WAL recovery. Avoid an unnecessary lock/unlock in WalBeginReadTransaction.

FossilOrigin-Name: db3509c55dfe288650b803622e3a0828c6e59aea

15 years agoGet the new xShmLock interface design working on os_win.c.
drh [Mon, 31 May 2010 16:10:12 +0000 (16:10 +0000)] 
Get the new xShmLock interface design working on os_win.c.

FossilOrigin-Name: 149a7082e266edf0dc25c23823a9e240f5285215

15 years agoMake sure WAL alway requests enough shared-memory space.
drh [Mon, 31 May 2010 14:39:31 +0000 (14:39 +0000)] 
Make sure WAL alway requests enough shared-memory space.

FossilOrigin-Name: 138f128317b6695530ca3fde7be4cdf22548cd22

15 years agoRemove the tests that enable tracing based on the existance of the "vdbe_*"
drh [Mon, 31 May 2010 14:28:25 +0000 (14:28 +0000)] 
Remove the tests that enable tracing based on the existance of the "vdbe_*"
files when in SQLITE_DEBUG mode.

FossilOrigin-Name: cdbb4e7ca7ec27e7e80dd66529d9d565f547887a

15 years agoUpdate another test case in wal.test.
dan [Mon, 31 May 2010 14:18:45 +0000 (14:18 +0000)] 
Update another test case in wal.test.

FossilOrigin-Name: 99fde69e61d12cf95b47db70c4647c30be2d2f45

15 years agoChange WAL test cases to account for the improved concurrency in the new
drh [Mon, 31 May 2010 13:11:49 +0000 (13:11 +0000)] 
Change WAL test cases to account for the improved concurrency in the new
checkpoint logic.

FossilOrigin-Name: 2d6f2485053e6d2a67abda9a80693ca68f4556d2

15 years agoDo not fail a checkpoint just because active readers prevent backfill.
drh [Mon, 31 May 2010 12:30:52 +0000 (12:30 +0000)] 
Do not fail a checkpoint just because active readers prevent backfill.

FossilOrigin-Name: 9aa4243e0cedcc9204994d04af1b2b7a80c048bd

15 years agoAdd WALTRACE() macros to help with debugging and analysis.
drh [Mon, 31 May 2010 12:15:19 +0000 (12:15 +0000)] 
Add WALTRACE() macros to help with debugging and analysis.

FossilOrigin-Name: 765c33181a7b9d99b452ce750d69f217b3c81a5d

15 years agoAnother minor fix to checkpoint on the WAL branch.
dan [Mon, 31 May 2010 12:02:30 +0000 (12:02 +0000)] 
Another minor fix to checkpoint on the WAL branch.

FossilOrigin-Name: 853f1e3f7720af2723b552bdf086bb106e6e93fe

15 years agoFix a bug in checkpoint introduced by [181ceb32ea].
dan [Mon, 31 May 2010 11:39:53 +0000 (11:39 +0000)] 
Fix a bug in checkpoint introduced by [181ceb32ea].

FossilOrigin-Name: b499dbc88a67b4200b5f527be88be4ac90f7043f

15 years agoFix some asserts and other things in the new WAL branch.
dan [Mon, 31 May 2010 11:16:30 +0000 (11:16 +0000)] 
Fix some asserts and other things in the new WAL branch.

FossilOrigin-Name: 181ceb32ead7f540a7c6437f53a5b0f3e78162db

15 years agoChanges to the way one of the WAL/OOM tests works.
dan [Mon, 31 May 2010 06:38:34 +0000 (06:38 +0000)] 
Changes to the way one of the WAL/OOM tests works.

FossilOrigin-Name: 15abbc34168f7a5bd418254c2b16aac97029e6ea

15 years agoWAL runs but quickly deadlocks.
drh [Mon, 31 May 2010 01:41:15 +0000 (01:41 +0000)] 
WAL runs but quickly deadlocks.

FossilOrigin-Name: ace58acbf1fad13d2be96cafebc3a22875098d03

15 years agoInitial code for incremental checkpoint in WAL mode. This check-in compiles
drh [Sun, 30 May 2010 19:55:15 +0000 (19:55 +0000)] 
Initial code for incremental checkpoint in WAL mode.  This check-in compiles
on unix and runs as long as you do not engage WAL mode.  WAL mode crashes and
burns.  Consider this check-in a baseline implementation for getting the new
capability up and running.

FossilOrigin-Name: ef3ba7a17ff90674d702e5694b9e792851ab6998

15 years agoAdd tests to fkey2.test to check that ON CONFLICT clauses do not affect SQLite's...
dan [Sat, 29 May 2010 08:40:37 +0000 (08:40 +0000)] 
Add tests to fkey2.test to check that ON CONFLICT clauses do not affect SQLite's behaviour when an FK constraint is violated.

FossilOrigin-Name: e9e5b1001986348ef0f88c19de87b94559a5451e

15 years agoi
dan [Sat, 29 May 2010 06:18:54 +0000 (06:18 +0000)] 
i
i
Minor changes to checksum related test cases.

FossilOrigin-Name: 60c22bde52121993d4bea11eef38ab285c737e2c

15 years agoAdd a test to walcksum.test to stress the checksum calculation.
dan [Fri, 28 May 2010 04:16:28 +0000 (04:16 +0000)] 
Add a test to walcksum.test to stress the checksum calculation.

FossilOrigin-Name: 778d0c1768f73057be912793631e0cf0575858fb

15 years agoMake sure the wal-index mapping is always large enough to cover the entire
drh [Wed, 26 May 2010 17:31:58 +0000 (17:31 +0000)] 
Make sure the wal-index mapping is always large enough to cover the entire
active area of the wal-index.

FossilOrigin-Name: 42705babba0e9d2ef078845854bebbd168f23366

15 years agoChange the semantics of xShmGet() such that it will never increase the size
drh [Wed, 26 May 2010 15:06:38 +0000 (15:06 +0000)] 
Change the semantics of xShmGet() such that it will never increase the size
of shared memory.  xShmSize() must be used to grow the size of shared memory.
A shared memory segment size cannot be shrunk (except by dropping it).

FossilOrigin-Name: 72de00731245277b2209103ec0a76e3d4f56530e

15 years agoUpdated header comments in wal.c. No functional code changes.
drh [Tue, 25 May 2010 15:53:31 +0000 (15:53 +0000)] 
Updated header comments in wal.c.  No functional code changes.

FossilOrigin-Name: 687632a6b3a0aeb006c1eda5c27d5489f08c230e

15 years agoAdd a busy-handler to a test case in walthread.test to prevent errors.
dan [Tue, 25 May 2010 15:23:51 +0000 (15:23 +0000)] 
Add a busy-handler to a test case in walthread.test to prevent errors.

FossilOrigin-Name: d3d348aa975c58c37088eb2830081880896b85e7

15 years agoModify walcrash2.test so that it works with DEFAULT_AUTOVACUUM=1.
dan [Tue, 25 May 2010 13:49:09 +0000 (13:49 +0000)] 
Modify walcrash2.test so that it works with DEFAULT_AUTOVACUUM=1.

FossilOrigin-Name: 77438882dd53ac4d98b24e2846c87a2418b4e3d8

15 years agoUpdate header comments in wal.c to correctly describe the WAL file format.
drh [Tue, 25 May 2010 13:40:03 +0000 (13:40 +0000)] 
Update header comments in wal.c to correctly describe the WAL file format.
Update the locking region offsets in os_unix.c and os_win.c and add assert()
statement to verify that the locking region offsets are correct.

FossilOrigin-Name: 40030c0739f821ea8ee188c28c579507f10448bc

15 years agoIf a writer exits unexpectedly in the middle of a transaction, have the following...
dan [Tue, 25 May 2010 10:50:56 +0000 (10:50 +0000)] 
If a writer exits unexpectedly in the middle of a transaction, have the following writer remove any wal-index hash-table entries left by the interrupted transaction.

FossilOrigin-Name: ed77556adcdf7011b95b9969b360269fb2ebe4e5

15 years agoRemove unreachable code associated with WAL from the pager.
drh [Tue, 25 May 2010 02:24:01 +0000 (02:24 +0000)] 
Remove unreachable code associated with WAL from the pager.

FossilOrigin-Name: 54c1718e6d15a20414cae15895eb5e83217722e2

15 years agoOOM errors during an auto-checkpoint are benign.
drh [Mon, 24 May 2010 20:27:44 +0000 (20:27 +0000)] 
OOM errors during an auto-checkpoint are benign.

FossilOrigin-Name: 3d252ce5d0d843e4e65beed672598e65c5745129

15 years agoRemove the walmode.test case from the inmemory_journal test of
drh [Mon, 24 May 2010 20:24:38 +0000 (20:24 +0000)] 
Remove the walmode.test case from the inmemory_journal test of
permutations.test.

FossilOrigin-Name: 27ba9c21fb591190b73010ced394cc62c1edff54

15 years agoFix the wal2.test script so that it works in auto_vacuum mode.
drh [Mon, 24 May 2010 17:00:19 +0000 (17:00 +0000)] 
Fix the wal2.test script so that it works in auto_vacuum mode.

FossilOrigin-Name: 6a818afb93ca8383abb55e3835e14c74c3e3de23

15 years agoChange the checksum used in WAL files so that each frames checksum depends on the...
dan [Mon, 24 May 2010 13:57:42 +0000 (13:57 +0000)] 
Change the checksum used in WAL files so that each frames checksum depends on the content of the WAL header and all frame headers and content up to and including the frame to which the checksum is attached.

FossilOrigin-Name: 8a53f12c83a107684b99f4a9de371b5ea3ca810a

15 years agoMake sure a WAL frame of all zeros is detected as an invalid frame.
drh [Mon, 24 May 2010 13:28:36 +0000 (13:28 +0000)] 
Make sure a WAL frame of all zeros is detected as an invalid frame.

FossilOrigin-Name: 02d99ad4b51065c67cc7689916130774be1c4c87

15 years agoFix up test_osinst.c to work with SQLITE_OMIT_VIRTUALTABLE.
drh [Mon, 24 May 2010 12:34:14 +0000 (12:34 +0000)] 
Fix up test_osinst.c to work with SQLITE_OMIT_VIRTUALTABLE.

FossilOrigin-Name: 51fd38152b92db637d1d346fca35ec2d3e4d4f57

15 years agoChange the WAL file format to support two kinds of checksums - one that is fast to...
dan [Mon, 24 May 2010 10:39:36 +0000 (10:39 +0000)] 
Change the WAL file format to support two kinds of checksums - one that is fast to calculate on little-endian architectures and another that is fast on big-endian architectures. A flag in the wal-header indicates which the file uses.

FossilOrigin-Name: 65ba804dd1d31d1eef6ae3f40a3ade344a410b84

15 years agoAdd a couple of missing methods to test_osinst.c..
dan [Sat, 22 May 2010 08:22:39 +0000 (08:22 +0000)] 
Add a couple of missing methods to test_osinst.c..

FossilOrigin-Name: 5c9e9c06ae350043e66f36087da4021a52e6ee17

15 years agoAdd several EXPENSIVE_ASSERT code blocks to validate the wal-index hash table.
drh [Sat, 22 May 2010 00:55:39 +0000 (00:55 +0000)] 
Add several EXPENSIVE_ASSERT code blocks to validate the wal-index hash table.
Fix the bugs that these code blocks fine.  Rename walClearHash() to
walCleanupHash() and simplify its interface.

FossilOrigin-Name: 7aade899e55f4565f02d301e1e83fb0bac2ea500

15 years agoFix another bug in walClearHash().
dan [Fri, 21 May 2010 19:15:04 +0000 (19:15 +0000)] 
Fix another bug in walClearHash().

FossilOrigin-Name: 40f80ffe70ca691dfa146f6d84956ed0784fc63d

15 years agoComment out the SQLITE_FCNTL_SIZE_HINT from os_unix.c since it does not
drh [Fri, 21 May 2010 18:24:06 +0000 (18:24 +0000)] 
Comment out the SQLITE_FCNTL_SIZE_HINT from os_unix.c since it does not
seem to provide any performance gain there.

FossilOrigin-Name: 7d01309da658d6b658c1b2e53bbdc5112fb0a4d9

15 years agoCorrect an off-by-one bug in the previous commit.
dan [Fri, 21 May 2010 16:23:43 +0000 (16:23 +0000)] 
Correct an off-by-one bug in the previous commit.

FossilOrigin-Name: 75a1130d86faf18e73cb46cda5d029f1e913e4e6

15 years agoRemove entries from wal-index hash tables when a rollback or savepoint rollback occurs.
dan [Fri, 21 May 2010 15:31:56 +0000 (15:31 +0000)] 
Remove entries from wal-index hash tables when a rollback or savepoint rollback occurs.

FossilOrigin-Name: 36795c2b23a78978528cace193e386138adacd41

15 years agoFix the wal-index header read routine so that it correctly detects a zero
drh [Fri, 21 May 2010 13:16:18 +0000 (13:16 +0000)] 
Fix the wal-index header read routine so that it correctly detects a zero
header as being malformed and in need of a wal-index rebuild.

FossilOrigin-Name: 1a4eb3a3efe86c7caff4d9a5894953bce378f841

15 years agoAdd a new xShmBarrier method to the VFS - a shared-memory fence operation.
drh [Thu, 20 May 2010 23:51:06 +0000 (23:51 +0000)] 
Add a new xShmBarrier method to the VFS - a shared-memory fence operation.
Implement the same in both unix and win32.  Use it to make the WAL subsystem
more robust.

FossilOrigin-Name: 1bd011c9fed5ef29fb616b4d0a52df3b82221b1f

15 years agoMake use of the extra information in the WAL header and frame header to
drh [Thu, 20 May 2010 21:21:09 +0000 (21:21 +0000)] 
Make use of the extra information in the WAL header and frame header to
enhance robustness.

FossilOrigin-Name: 9580ecb7e3beb1949a71784a3dcd1823a88e4a9d

15 years agoConvert the wal-header and frame-header to 24 bytes. Extra information in
drh [Thu, 20 May 2010 16:45:58 +0000 (16:45 +0000)] 
Convert the wal-header and frame-header to 24 bytes.  Extra information in
both headers is designed to enhance robustness after crashes, though the
extra information is currently unused.  This is a snapshot of a work in
progress.

FossilOrigin-Name: 669706431f186f92fdc0856a6206419a1e843f46

15 years agoMerge WIN32 WAL support into trunk. Still some issues with locking to resolve.
shaneh [Wed, 19 May 2010 23:41:55 +0000 (23:41 +0000)] 
Merge WIN32 WAL support into trunk.  Still some issues with locking to resolve.

FossilOrigin-Name: 43377663fc3569c361867cdea19e8abaf91a163f

15 years agoAdd the SQLITE_FCNTL_SIZE_HINT to the os_win.c VFS.
drh [Wed, 19 May 2010 19:39:26 +0000 (19:39 +0000)] 
Add the SQLITE_FCNTL_SIZE_HINT to the os_win.c VFS.

FossilOrigin-Name: 9894118d20c08951565c2096552d4a3d2413f7b0

15 years agoAdd the SQLITE_FCNTL_SIZE_HINT operator to sqlite3_file_control() and use it
drh [Wed, 19 May 2010 19:26:05 +0000 (19:26 +0000)] 
Add the SQLITE_FCNTL_SIZE_HINT operator to sqlite3_file_control() and use it
to give the VFS hints about the ultimate size of a database file when the
file is growing.

FossilOrigin-Name: 2b7e3b4a30d6a7c4a8a4b8e7dd2ed728b565c96d

15 years agoFix a bug in the new checkpoint computation. Also update the checkpoint
drh [Wed, 19 May 2010 19:09:37 +0000 (19:09 +0000)] 
Fix a bug in the new checkpoint computation.  Also update the checkpoint
algorithm in the test scripts to align with the new implementation.

FossilOrigin-Name: 8b6056f2ee596f31b157a792fac05d11f7cb63bb

15 years agoRevise the checksumming algorithm in wal.c. More variable refactoring.
drh [Wed, 19 May 2010 18:08:10 +0000 (18:08 +0000)] 
Revise the checksumming algorithm in wal.c.  More variable refactoring.

FossilOrigin-Name: 542b90eba6440a0bccef329788fd17a2d3fbeee6

15 years agoRefactoring some variable names in wal.c.
drh [Wed, 19 May 2010 17:49:50 +0000 (17:49 +0000)] 
Refactoring some variable names in wal.c.

FossilOrigin-Name: 1d201ff51f7c5ecdf71a91ed25204b7130894282

15 years agoAdd a large comment to wal.c describing the WAL and wal-index file formats.
drh [Wed, 19 May 2010 01:53:53 +0000 (01:53 +0000)] 
Add a large comment to wal.c describing the WAL and wal-index file formats.

FossilOrigin-Name: a71a22b52f4570e934063553a81b39268127dc44

15 years agoUpdate the wal-index hash format so that hash-table space is reused following
drh [Tue, 18 May 2010 23:29:52 +0000 (23:29 +0000)] 
Update the wal-index hash format so that hash-table space is reused following
a rollback, thus preventing hash table overflows.  Add assert()s to verify
that hash tables do not overfill.  Further refactoring of the wal-index code.

FossilOrigin-Name: ada9a8c7b69c5dd2d66bbf62b61181651e6d2142

15 years agoRefactoring of the WalIterator implementation.
drh [Tue, 18 May 2010 18:01:08 +0000 (18:01 +0000)] 
Refactoring of the WalIterator implementation.

FossilOrigin-Name: b5b60fdcc5dcf41f2c79912075ac241f7ce220d6

15 years agoMark the shared-memory in the WAL implementation as volatile.
drh [Tue, 18 May 2010 13:27:12 +0000 (13:27 +0000)] 
Mark the shared-memory in the WAL implementation as volatile.

FossilOrigin-Name: 0a6787908e989bd5e6af25acbdc59ebc8fa61d6d

15 years agoComment clarifications in wal.c.
drh [Tue, 18 May 2010 12:56:50 +0000 (12:56 +0000)] 
Comment clarifications in wal.c.

FossilOrigin-Name: a029be10172e2e6a2ef4e3eb2ea1bd0ca85b16ed

15 years agoRemove an unreachable test from wal.c.
drh [Mon, 17 May 2010 20:16:50 +0000 (20:16 +0000)] 
Remove an unreachable test from wal.c.

FossilOrigin-Name: 7162c45673d1068d1fda55a70207a3cd77575502

15 years agoAdd a note to the documentation of sqlite3_wal_hook() to say not to return SQLITE_ROW...
dan [Sat, 15 May 2010 10:24:46 +0000 (10:24 +0000)] 
Add a note to the documentation of sqlite3_wal_hook() to say not to return SQLITE_ROW or SQLITE_DONE. Or any other value that is not a valid SQLite error code.

FossilOrigin-Name: 2f0b6cbf7b4fa31242ff4f6163226c22ae4f8c9b

15 years agoSilently ignore errors trying to set the default journal_mode while doing
drh [Sat, 15 May 2010 01:09:38 +0000 (01:09 +0000)] 
Silently ignore errors trying to set the default journal_mode while doing
an ATTACH.

FossilOrigin-Name: b9af4ad2efadfb2fb9e338dc081a6231f1536700

15 years agoFix a typo that (by bad luck) was not a syntax error but which caused some
drh [Fri, 14 May 2010 20:15:51 +0000 (20:15 +0000)] 
Fix a typo that (by bad luck) was not a syntax error but which caused some
important lines of code to be skipped when SQLITE_DEBUG was not used.

FossilOrigin-Name: 9ef99d97d25aae81df971d40ad10c544b8f30053

15 years agoMake sure the value of an INTEGER PRIMARY KEY column supplied to triggers
drh [Fri, 14 May 2010 19:24:02 +0000 (19:24 +0000)] 
Make sure the value of an INTEGER PRIMARY KEY column supplied to triggers
and especially to FK constraints really contains the ROWID and not the
NULL that is stored in the column itself.  Ticket [dd08e5a988d00dec].

FossilOrigin-Name: 636f86095eb1f4bdcfb0c9ed846c4c6b3589c10b

15 years agoPull in all the latest changes from the trunk. wal-win32
drh [Fri, 14 May 2010 16:34:34 +0000 (16:34 +0000)] 
Pull in all the latest changes from the trunk.
Update the win32 SHM methods to work with the new interface design.

FossilOrigin-Name: 4b69f2cd315b6b66d10e5190d235114788853258

15 years agoSimplifications to the SHM implementation in os_unix.c, taking advantage
drh [Fri, 14 May 2010 14:52:25 +0000 (14:52 +0000)] 
Simplifications to the SHM implementation in os_unix.c, taking advantage
of the removal of the LinuxThreads mess.

FossilOrigin-Name: d1debe5def82a6bc72f11b8787176ac60259630f

15 years agoSimplify os_unix.c by removing support for LinuxThreads. Linux systems must
drh [Fri, 14 May 2010 12:43:01 +0000 (12:43 +0000)] 
Simplify os_unix.c by removing support for LinuxThreads.  Linux systems must
either use NPTL or else not share database connections across threads.

FossilOrigin-Name: e294b696ba91512b1ca5547774c51ea07b4cb5bc

15 years agoChange the OSTRACEn() macro to OSTRACE(()). Also rename some internal fields
drh [Fri, 14 May 2010 11:30:18 +0000 (11:30 +0000)] 
Change the OSTRACEn() macro to OSTRACE(()).  Also rename some internal fields
and variables in os_unix.c to be more meaningful and searchable.

FossilOrigin-Name: 5fe529f239cddbf4b7ea57abb02d95cc0d94f5f5

15 years agoFix test_osinst.c so that it does not depend on gettimeofday() unless SQLITE_OS_UNIX...
dan [Fri, 14 May 2010 10:43:28 +0000 (10:43 +0000)] 
Fix test_osinst.c so that it does not depend on gettimeofday() unless SQLITE_OS_UNIX is defined and NO_GETTOD is not defined.

FossilOrigin-Name: 2a4014b79b852d8b62b4941495b826f154308d86

15 years agoAdd xShmXXX methods to test_osinst.c.
dan [Fri, 14 May 2010 08:39:48 +0000 (08:39 +0000)] 
Add xShmXXX methods to test_osinst.c.

FossilOrigin-Name: b8a9b37a3c8d1005a16185c1fc4c414ca11d736a

15 years agoMake debugging elements of the sqlite3_mutex object volatile and make them
drh [Thu, 13 May 2010 20:19:17 +0000 (20:19 +0000)] 
Make debugging elements of the sqlite3_mutex object volatile and make them
only appear when compiling with SQLITE_DEBUG.  Ticket [51914f6acd2cb462].

FossilOrigin-Name: e823c60ca4c3d515b8b12dada4631fe8f44975e9

15 years agoAllow sqlite3WalCheckpoint() to be called even if the WAL is in the
drh [Thu, 13 May 2010 15:44:00 +0000 (15:44 +0000)] 
Allow sqlite3WalCheckpoint() to be called even if the WAL is in the
SQLITE_SHM_READ state, as sometimes happens after an error.

FossilOrigin-Name: 175b296f9b9680f605537f52a8a53944deaa5391

15 years agoRemerge mistaken test_osinst.c changes.
dan [Thu, 13 May 2010 09:40:30 +0000 (09:40 +0000)] 
Remerge mistaken test_osinst.c changes.

FossilOrigin-Name: e8c10d3cf601cc81a620f6c0ba5f195945a3f725

15 years agoFix mistake in test_osinst.c.
dan [Thu, 13 May 2010 09:32:30 +0000 (09:32 +0000)] 
Fix mistake in test_osinst.c.

FossilOrigin-Name: 4c3e137803f86ec5a6c68bfaa29a2847ba48fd65

15 years agoMake sure xShmGet is never called while already holding the shared-memory
drh [Thu, 13 May 2010 09:11:31 +0000 (09:11 +0000)] 
Make sure xShmGet is never called while already holding the shared-memory
segment.

FossilOrigin-Name: 92ebdbc5f64ac63796ff56c1e1aec3b95c6bdd20

15 years agoThe refactored of VFS SHM primitives are now working so merge the
drh [Thu, 13 May 2010 08:53:41 +0000 (08:53 +0000)] 
The refactored of VFS SHM primitives are now working so merge the
wal-refactor branch back into the trunk.

FossilOrigin-Name: bce21c18380715e894eac9c173c97315e0d69d93