drh
1c5bb4d69c
Fix an uninitialized variable in OSX proxy locking.
...
FossilOrigin-Name: 96d6eaf4d2be453191b36875811d9556ad0763ed
2010-05-10 17:29:28 +00:00
dan
bb23aff3df
Modify the format of the wal-index to use a hash table to index log file segments.
...
FossilOrigin-Name: 40b0a6357b160e04326ab176955a68a1cf3f8b7c
2010-05-10 14:46:09 +00:00
drh
acd0781892
If an ATTACH command files due to OP_JournalMode but still attaches the
...
database, make sure VACUUM still detaches it when done.
FossilOrigin-Name: 6ecdc7ba2b5e79e8b5862fb49cf6c2b99a40659a
2010-05-10 14:10:57 +00:00
drh
ab9b74443c
Enhance the OP_JournalMode opcode with an ignore-errors option and use that
...
option the ATTACH command.
FossilOrigin-Name: 0bdea4cfbd7832f2a00c01b93c92ba13d20139ef
2010-05-10 11:20:05 +00:00
drh
2905f053ef
When running a checkpoint while in locking_mode=EXCLUSIVE, be sure to move
...
the wal-index lock to UNLOCK from READ prior to promoting to CHECKPOINT.
FossilOrigin-Name: be114bdf9bb98c7287f8cb54340c630b0c412e9d
2010-05-07 20:34:17 +00:00
drh
e874d9ed79
Change the xShmOpen() method of the VFS to take the database file name as
...
its argument, not the WAL file name. Also fix some unrelated compiler
warnings.
FossilOrigin-Name: a65c2939267ef6acec4e355a207f98f217e263d6
2010-05-07 20:02:23 +00:00
drh
6a2607a131
Additional tweaks to API documentation. No functional code changes.
...
FossilOrigin-Name: e1230782a371f09cd46dacc8ecbc6a0c5baab2d5
2010-05-07 18:23:24 +00:00
drh
005e19c4c1
Updates to documentation on the C interfaces supporting WAL. No functional
...
changes to code.
FossilOrigin-Name: 681ba20cf077e9a0fccd51ed50101ad0f2c67eb3
2010-05-07 13:57:11 +00:00
dan
c6315a44b2
Fix a recently introduced problem in wal.test.
...
FossilOrigin-Name: 79b52d0ff7a7b717bde55b97ff05ad17418bc7d7
2010-05-07 13:52:42 +00:00
dan
65bddc1223
Change wal.test and walhook.test so that they work with DEFAULT_AUTOVACUUM=1 builds.
...
FossilOrigin-Name: 4cde92909c20982f7d4e6b550f55d786df398ccd
2010-05-07 12:49:22 +00:00
dan
65f2ac58b6
Test another IO error case in wal.c.
...
FossilOrigin-Name: 8b3b5ab8fa61ca4ef22c98abaab397707ee74ea3
2010-05-07 09:43:50 +00:00
dan
998ad21271
Fix a problem with checkpointing large log files created by an external process.
...
FossilOrigin-Name: 8f94bde568be52ecc5a976b7a09776ea7b4bb511
2010-05-07 06:59:08 +00:00
dan
846705021d
Since walIndexTryHdr() can no longer encounter any error conditions, change tehe function signature so that it does not return an error code. This removes unreachable branches from other code.
...
FossilOrigin-Name: 061a282cc0bf76541ab1f99b351a49d489ff93ec
2010-05-07 05:46:23 +00:00
drh
2c47d194a2
Another attempt to fix permutations.test so that it excludes WAL tests
...
from the journaltest permutation.
FossilOrigin-Name: 58c404429c5af167a82899fc4c736ed7489ed746
2010-05-07 00:28:41 +00:00
drh
6763e3550d
Remove savepoint6.test from the set of tests run by journaltest since
...
savepoint6.test uses journal_mode=WAL.
FossilOrigin-Name: 811b45a96bfaa0ef2394b86c06e8f099a07ee9f0
2010-05-06 22:21:14 +00:00
drh
3ebaee9633
The PRAGMA journal_mode=WAL; command now makes WAL the default journal mode
...
for new databases added with ATTACH, so the behavior is consistent with the
other journal modes.
FossilOrigin-Name: c3520460a4a39fc5e981c3033068ffbb422a4af2
2010-05-06 21:37:22 +00:00
drh
72af0774f9
Make sure to do a clean shutdown of the library upon existing the shell
...
in order to remove WAL files.
FossilOrigin-Name: c1762dda00b8bdb7c3247617ac4cb654f1d95cf7
2010-05-06 20:19:55 +00:00
drh
fb4a626da0
Exclude all WAL tests from the journaltest permutation.
...
FossilOrigin-Name: 46c97d7eee9359cd21139a6520633f5d16594ab0
2010-05-06 19:55:57 +00:00
shaneh
fd06863881
Changes to support SQLITE_OMIT_WAL.
...
FossilOrigin-Name: 32a8501d78714cc390eba5f993f329ef3b499878
2010-05-06 19:20:29 +00:00
drh
08fba00781
Updates to the VFS SHM locking documentation.
...
FossilOrigin-Name: 9927ce421090ac20285cf05768b38e1f91826a68
2010-05-06 19:04:48 +00:00
dan
65be0d8cce
Instead of transitioning to RECOVER state from CHECKPOINT when a recovery is required, perform the recovery while holding the CHECKPOINT lock.
...
FossilOrigin-Name: bb0b6021e721c2e4f1533ab18381604c6b7b31d5
2010-05-06 18:48:27 +00:00
dan
5273f58f37
If recovery is run before a checkpoint, change back to a CHECKPOINT lock before performing the actual checkpoint.
...
FossilOrigin-Name: dc98ee169cfa43c89f1b36fb1150d4788710fda3
2010-05-06 18:27:19 +00:00
dan
576bc3294d
Only pass -1 as the size parameter to xShmGet when the caller does not care what size mapping is returned. Only call xShmSize when the underlying allocation (not the mapping) should be resized.
...
FossilOrigin-Name: 637f51ddf9e4a57e1f171b6d2c6c93152074267e
2010-05-06 18:04:50 +00:00
dan
b7d53f54ae
Fix a bug whereby an old snapshot could be checkpointed (and subsequent transactions discarded) if the last connection to disconnect from a WAL database happended to be holding an out-of-date wal-index header.
...
FossilOrigin-Name: d0c0034b0baa83046c1d6b94c886f7039e4e06f5
2010-05-06 17:28:08 +00:00
drh
6e5b37faef
After throwing an error to say that one cannot change into WAL mode within
...
a tranactions, do not then go and change into WAL mode.
FossilOrigin-Name: 56a17dae91600a3863903f8d654ed52a0f720caf
2010-05-06 16:06:38 +00:00
dan
d41a29a653
Further coverage tests.
...
FossilOrigin-Name: 98a9713e0030a36ea99a18a12a2e7685c6db72b3
2010-05-06 15:56:28 +00:00
shaneh
84aab39782
Update configure scripts for WAL support.
...
FossilOrigin-Name: 2edc5129f216abec9b13a0ad9b6640606caa9f72
2010-05-06 15:35:59 +00:00
dan
a861469a07
Add tests to cover a couple of branches in wal.c.
...
FossilOrigin-Name: 429f437fb776fc974a6adf791b729e25bea82fef
2010-05-06 14:42:34 +00:00
dan
c9e4665e7d
Unset a tcl variable before reusing it in wal.test.
...
FossilOrigin-Name: e83efb232fe8d30714f4c7cffeef80092aea4df7
2010-05-06 13:36:47 +00:00
dan
ff6dfc73fe
Add tests for some lock-contention cases.
...
FossilOrigin-Name: f0fcb9c9a67e2bf7bbedbedbc27791b605a21dd1
2010-05-06 12:15:48 +00:00
drh
e404de05c0
Remove the noop-mutex implementations of mutex_held() and mutex_notheld()
...
since they are both unreachable.
FossilOrigin-Name: 6767b62a9a063582889f5ceb42f95eab24c697da
2010-05-06 11:56:52 +00:00
drh
24e3971197
Add two text files containing pager design notes to the doc/ subfolder.
...
FossilOrigin-Name: ed817fc893e7162ae0ff4022591f7e9e3b81d622
2010-05-06 11:55:56 +00:00
dan
9a6b4e9adb
Add test cases to test the libraries handling of corrupt wal-index headers.
...
FossilOrigin-Name: 9465b267d420120c050bbe4f143ac824146a9e4a
2010-05-06 11:32:09 +00:00
dan
8f6097c244
Add tests for handling errors returned by xShm VFS methods.
...
FossilOrigin-Name: fbbcacb137e8f5246b88ad09331236aaa1900f60
2010-05-06 07:43:58 +00:00
drh
5def0843f1
Change the behavior of the sqlite3_wal_hook() callback. It should now return
...
SQLITE_OK or an error code and the error code is propagated back up the
stack. If a checkpoint is desired, the callback should invoke
sqlite3_wal_callback() itself.
FossilOrigin-Name: 1b14195e05fe5551992a39246ec3bcf6a33bbfac
2010-05-05 20:00:25 +00:00
drh
ccd13d1f80
Further simplifications to the SHM locking logic. Remove the SQLITE_SHM_QUERY
...
option. Unify the WRITE to READ and RECOVER to READ transitions.
FossilOrigin-Name: e9bfa6e4ce7d1edc6be8b9173ac3b6bfd180632a
2010-05-05 19:09:49 +00:00
dan
c7991bdf29
Test the handling of errors returned by the xShmXXX() APIs.
...
FossilOrigin-Name: 72663123d6be2b194cad7a6057d0f20dd0d9fe05
2010-05-05 19:04:59 +00:00
drh
5c10f77d52
Do not compare page sizes on source and destination of backup until
...
transactions are started and the page sizes are locked. This is a
fix to check-in [7bd44794c4].
FossilOrigin-Name: ec7157788b16936b4b6e4642107b3c86aa44df24
2010-05-05 18:46:44 +00:00
drh
4bc79def36
Simplifications to the SHM locking implementation in os_unix.c.
...
FossilOrigin-Name: 9de05bfb09e29bafdf5782263330fe8eefcfaba3
2010-05-05 18:20:07 +00:00
drh
3289c5efc8
Prohibit backup if the destination is using WAL and has a different page
...
size from the source.
FossilOrigin-Name: 7bd44794c482beee16c684712545275e2bf63dfa
2010-05-05 16:23:26 +00:00
dan
1018e90b1e
When closing a WAL database, if the exclusive lock on the database file is obtained and the database successfully checkpointed, delete the wal-index file from the file system.
...
FossilOrigin-Name: 2ac5d96c8e5831b392d83c86491d9ed8bc9c8db7
2010-05-05 15:33:05 +00:00
drh
16adb77623
Make sure the page size of the main database is fixed following a
...
failed VACUUM attempt. Otherwise, two consecutive failed VACUUM attempts
with attempted page_size changes on encrypted or WAL databases could
result in database corruption.
FossilOrigin-Name: 208e7d5d3a8915433dbf50c6cc6698ec6c8df944
2010-05-05 04:11:44 +00:00
drh
811bdbd206
Do not attempt to modify the page_size when running VACUUM on a WAL database.
...
FossilOrigin-Name: 58a1a59be89b33c6d5fa8b43571037d7d96625a1
2010-05-05 03:39:53 +00:00
drh
fc34ad291e
Get the previous mutex fix working with SQLITE_DEBUG and with the amalgamation.
...
FossilOrigin-Name: df19928f7ee94bca3989313ff16507c15d6efe2b
2010-05-05 00:22:21 +00:00
drh
92d7652379
When the in single-threaded mode, the sqlite3_mutex_alloc() interface
...
still returns a non-NULL value. The mutex doesn't do anything, but it
tests non-NULL. This way, extensions (or VFSes) that use sqlite3_mutex_alloc()
can tell the difference between an OOM error and mutexes being disabled.
FossilOrigin-Name: 451fd175758983c335aab449fdc4cb838156c4cb
2010-05-05 00:05:24 +00:00
drh
7721b23e0a
When sqlite3PagerPagecount() is called without any locks, always return
...
the physical file size, not the logical file size.
FossilOrigin-Name: 4016b422286587beda7323052d27821adb1fed73
2010-05-04 18:50:40 +00:00
drh
a8e654eb38
Be sure to release all wal-index locks before closing the wal-index.
...
FossilOrigin-Name: b15b67fa14ff77963f470678ff6188c63be8e079
2010-05-04 17:38:42 +00:00
drh
cd058ec4ef
Relax an over-zealous assert() in sqlite3WalUndo().
...
FossilOrigin-Name: 8f9d22d58c75ad7476c1eea8ba296347e30b7beb
2010-05-04 17:20:09 +00:00
drh
33bec22fb1
Take care not to invoke the xShmClose method of the VFS with a NULL
...
shared memory object.
FossilOrigin-Name: 1465d3842c52aa7471f63deb47fe5b256d4e01c2
2010-05-04 16:33:37 +00:00
dan
2cee6abf8e
Add a test case to verify that log files containing pages that are not a power-of-two bytes in size are handled correctly.
...
FossilOrigin-Name: c2bf693f933313991d85394009e79a7903037a18
2010-05-04 15:20:45 +00:00