drh
05cb5b244b
Performance fix for winShmClose().
...
FossilOrigin-Name: ed7774de04978803e979580240148eba1de9166d
2010-06-03 18:02:48 +00:00
dan
db9d981a8d
Add extra tests for removing elements from wal-index hash tables as part of a rollback.
...
FossilOrigin-Name: af3e598ad9315a4642dd8fa098dfdbd727770aed
2010-06-03 16:58:46 +00:00
dan
459564f43f
Delay opening the sub-journal until SQLite actually needs to write data to it.
...
FossilOrigin-Name: c43deb33ae5f191ea2e054181759beeeb9ea71bf
2010-06-03 12:35:28 +00:00
drh
f83dc1ef3f
Remove global variables when compiled with SQLITE_OMIT_WSD
...
FossilOrigin-Name: dd10a547f10364058025c48b28d8fd240bf46aff
2010-06-03 12:09:52 +00:00
dan
1f55e28d2a
Enhancements to test_vfs.c and walfault.test.
...
FossilOrigin-Name: ac0de2f39e948f3b00e96eebf56ebee70472020d
2010-06-03 09:25:10 +00:00
dan
40ad9d2870
If an error (OOM or SQLITE_FULL error) occurs while executing an SQL statement and a statement-transaction is automatically rolled back as a result, if a second error occurs during the statement rollback do a full transaction rollback instead. Otherwise the client can be left with an inconsistent cache.
...
FossilOrigin-Name: eb80ddc665132c607c258b59131025a296269dad
2010-06-03 09:17:38 +00:00
dan
8e64db2b09
If a malloc fails while allocating a savepoint object at the pager level, do not try to roll that savepoint back later on.
...
FossilOrigin-Name: 91cb08ffb6332a142542c012b58aa49206ee5704
2010-06-03 09:01:11 +00:00
drh
2d37e1cfb9
When a lock fails due to an I/O error (not an SQLITE_BUSY) then the checkpoint
...
should fail.
FossilOrigin-Name: c6eb0a27270df69018576232d8f97c16d63d8f6e
2010-06-02 20:38:20 +00:00
dan
6e6bd5658f
Fix a problem with rolling back to a savepoint opened before the writer decided to wrap the log file.
...
FossilOrigin-Name: 6b4aed6aae7dc9e92807d27375cbe1e83c15841b
2010-06-02 18:59:03 +00:00
dan
10ec894c3a
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
2010-06-02 17:15:24 +00:00
shaneh
2796d336d2
Added implementation of vfslog_time() for Windows testing.
...
FossilOrigin-Name: b3109f85bde0b24bfbcfe6c0f7bbe973be196c1d
2010-06-02 16:40:54 +00:00
shaneh
a1a889ecb4
Updated wal2.test for windows testing.
...
FossilOrigin-Name: c3606f3985e4ab38479409c13f3a01d1be4f8189
2010-06-02 16:39:53 +00:00
drh
c11895b808
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
2010-06-02 15:59:05 +00:00
drh
38933f2c11
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
2010-06-02 15:43:18 +00:00
drh
aab4c02e47
Changes to make WAL more robust against SHM locking failures and OOM errors.
...
FossilOrigin-Name: ebf4041383c3cdddb5861960359abd209d4a1028
2010-06-02 14:45:51 +00:00
drh
048129dcb9
In the rowhash.test, make sure global variables are cleared prior to use.
...
FossilOrigin-Name: 28efe0a40405567f3eaf334b6603282d5adac792
2010-06-02 14:43:30 +00:00
drh
0af3723478
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
2010-06-02 12:58:22 +00:00
dan
558814f8c6
Add some 'const' markers to static data that is really constant.
...
FossilOrigin-Name: e7073e23b80e7cae0c76d42f014ee9b2d40a8f2f
2010-06-02 05:53:53 +00:00
drh
8b3cf82ddf
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
2010-06-01 21:02:51 +00:00
dan
0235ab9944
Changes to the way faults are injected into xShmXXX VFS calls.
...
FossilOrigin-Name: 716d99f3929b466c7a17190e0f18de8ab0e7f1fa
2010-06-01 19:15:18 +00:00
dan
a4bc123f83
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
2010-06-01 17:46:38 +00:00
dan
9971e710e4
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
2010-06-01 15:44:57 +00:00
drh
964bf9c8bb
The incremental checkpoint feature is not perfect yet, but it is working
...
well enough to merge it into the trunk.
FossilOrigin-Name: 1d3e569e59ba89cc167f0a48951ecd82f10322ba
2010-06-01 15:24:29 +00:00
dan
98fbfe703e
Merge with [15abbc3416].
...
FossilOrigin-Name: f4b9003a2d3db88eaabb4b291e6cea8e8ea6ff51
2010-06-01 14:30:49 +00:00
dan
f9b7671066
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
2010-06-01 14:12:45 +00:00
drh
f77bbd9fc5
Fix a bug introduced by the previous check-in but only seen if
...
SQLITE_ENABLE_EXPENSIVE_ASSERTS is turned on.
FossilOrigin-Name: 9c9ec8994bf701249efce6c7bb911de4525808c8
2010-06-01 13:17:44 +00:00
drh
9c1564779e
Fix an off-by-one boundary-value issue in walCleanupHash().
...
FossilOrigin-Name: f039552e6330b6a04281748f985b41937f534bd0
2010-06-01 12:58:41 +00:00
dan
72bcac9ca7
Do not hold the shared-memory mutex in os_unix.c if returning NULL.
...
FossilOrigin-Name: 9622dd468c8914262e9d8bd8dbca9e22ec6ee75c
2010-06-01 11:08:56 +00:00
dan
e877296705
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
2010-06-01 10:44:28 +00:00
dan
5f3f3b2962
Fixes to the test cases in wal2.test.
...
FossilOrigin-Name: cd5fbcbce8b55f24c0bf349b179c26e333ff7172
2010-06-01 07:51:47 +00:00
drh
181e091ff3
Comment edits and cleanup in wal.c. No functional code changes.
...
FossilOrigin-Name: e8e666ab8273f5db5265f0773b39820f75b6df1a
2010-06-01 01:08:08 +00:00
drh
ad24581e65
Attempt to get the filectrl.test script running.
...
FossilOrigin-Name: e46a8f2b752f86c4d8942ee125210516026ffdc2
2010-06-01 00:28:42 +00:00
drh
b29ad8502e
Fix os_unix.c so that it will compile and build on a Mac.
...
FossilOrigin-Name: bc707c83e5f9849d9d201d695d0d071ca9ed93cb
2010-06-01 00:03:57 +00:00
drh
61e4acecf4
Fix issues with locking_mode=EXCLUSIVE in WAL.
...
FossilOrigin-Name: 8deba0cebd135a18da68530fab9e7d19dc21ddcb
2010-05-31 20:28:37 +00:00
drh
4b82c387c9
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
2010-05-31 18:24:19 +00:00
drh
15d6809222
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
2010-05-31 16:56:14 +00:00
dan
d0aa34277f
Avoid dropping the checkpoint lock after a recovery run as a precursor to a checkpoint operation.
...
FossilOrigin-Name: cc25cfa04630a43c1de26f2dbdacbe46c110a2b5
2010-05-31 16:41:53 +00:00
dan
3dee6da994
Zero the checkpoint header as the last step of successful WAL recovery. Avoid an unnecessary lock/unlock in WalBeginReadTransaction.
...
FossilOrigin-Name: db3509c55dfe288650b803622e3a0828c6e59aea
2010-05-31 16:17:54 +00:00
drh
20e1f08e0b
Get the new xShmLock interface design working on os_win.c.
...
FossilOrigin-Name: 149a7082e266edf0dc25c23823a9e240f5285215
2010-05-31 16:10:12 +00:00
drh
18b7f604aa
Make sure WAL alway requests enough shared-memory space.
...
FossilOrigin-Name: 138f128317b6695530ca3fde7be4cdf22548cd22
2010-05-31 14:39:31 +00:00
drh
4222441dee
Remove the tests that enable tracing based on the existance of the "vdbe_*"
...
files when in SQLITE_DEBUG mode.
FossilOrigin-Name: cdbb4e7ca7ec27e7e80dd66529d9d565f547887a
2010-05-31 14:28:25 +00:00
dan
dcb1169fb7
Update another test case in wal.test.
...
FossilOrigin-Name: 99fde69e61d12cf95b47db70c4647c30be2d2f45
2010-05-31 14:18:45 +00:00
drh
a2ac9df170
Change WAL test cases to account for the improved concurrency in the new
...
checkpoint logic.
FossilOrigin-Name: 2d6f2485053e6d2a67abda9a80693ca68f4556d2
2010-05-31 13:11:49 +00:00
drh
34116eaf6a
Do not fail a checkpoint just because active readers prevent backfill.
...
FossilOrigin-Name: 9aa4243e0cedcc9204994d04af1b2b7a80c048bd
2010-05-31 12:30:52 +00:00
drh
c74c333408
Add WALTRACE() macros to help with debugging and analysis.
...
FossilOrigin-Name: 765c33181a7b9d99b452ce750d69f217b3c81a5d
2010-05-31 12:15:19 +00:00
dan
1beb939db1
Another minor fix to checkpoint on the WAL branch.
...
FossilOrigin-Name: 853f1e3f7720af2723b552bdf086bb106e6e93fe
2010-05-31 12:02:30 +00:00
dan
0cc5b2b6c6
Fix a bug in checkpoint introduced by [181ceb32ea].
...
FossilOrigin-Name: b499dbc88a67b4200b5f527be88be4ac90f7043f
2010-05-31 11:39:53 +00:00
dan
d54ff60bf4
Fix some asserts and other things in the new WAL branch.
...
FossilOrigin-Name: 181ceb32ead7f540a7c6437f53a5b0f3e78162db
2010-05-31 11:16:30 +00:00
dan
8521abfd48
Changes to the way one of the WAL/OOM tests works.
...
FossilOrigin-Name: 15abbc34168f7a5bd418254c2b16aac97029e6ea
2010-05-31 06:38:34 +00:00
drh
c99597ca10
WAL runs but quickly deadlocks.
...
FossilOrigin-Name: ace58acbf1fad13d2be96cafebc3a22875098d03
2010-05-31 01:41:15 +00:00