]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
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

15 years agoChange the xShmSize() implementation in os_unix.c so that it will only wal-refactor
drh [Thu, 13 May 2010 08:33:35 +0000 (08:33 +0000)] 
Change the xShmSize() implementation in os_unix.c so that it will only
increase and never decrease the size of a shared-memory segment.

FossilOrigin-Name: 149d2ae4a6fe2f86822f286d2a7092c51bec7ebb

15 years agoFix for a segfault that can follow a malloc failure.
dan [Thu, 13 May 2010 07:08:53 +0000 (07:08 +0000)] 
Fix for a segfault that can follow a malloc failure.

FossilOrigin-Name: 3cab9022457ce50f82c5822d8ba6c04a3a85cb6a

15 years agoModify the VFS in test_vfs.c to match the refactoring of the xShmXXX methods.
dan [Thu, 13 May 2010 06:19:37 +0000 (06:19 +0000)] 
Modify the VFS in test_vfs.c to match the refactoring of the xShmXXX methods.

FossilOrigin-Name: 25e72f81561575051c63e9bf5d2c8e76f9fcf5c6

15 years agoChange the vfs instrumentation code in test_osinst.c to make it easier to deploy...
dan [Wed, 12 May 2010 19:02:35 +0000 (19:02 +0000)] 
Change the vfs instrumentation code in test_osinst.c to make it easier to deploy. Add a vtab implementation for reading the binary log file format.

FossilOrigin-Name: ee13c8849d234931bb3be36e42383d228b3cbfcb

15 years agoFix for the test_devsym.c test module for the VFS-SHM refactoring.
drh [Wed, 12 May 2010 18:30:36 +0000 (18:30 +0000)] 
Fix for the test_devsym.c test module for the VFS-SHM refactoring.

FossilOrigin-Name: 49d62933759d4e160ee3a4dd2aa316a2f5bbb4e6

15 years agoA couple simple fixes to get wal.test mostly working.
drh [Wed, 12 May 2010 18:10:52 +0000 (18:10 +0000)] 
A couple simple fixes to get wal.test mostly working.

FossilOrigin-Name: c74458127468f30b16715594c8d68e9d3c05d292

15 years agoRefactoring the VFS-SHM methods used by WAL. This version compiles and
drh [Wed, 12 May 2010 18:01:39 +0000 (18:01 +0000)] 
Refactoring the VFS-SHM methods used by WAL.  This version compiles and
runs non-WAL test cases but crashes and burns on wal.test.

FossilOrigin-Name: 2b00152c1ac0b3735aa6cfab61259ff04d81c701

15 years agoUpdates to WAL support in os_win.c: pulled in latest changes from src/os_unix.c;...
shaneh [Wed, 12 May 2010 17:14:59 +0000 (17:14 +0000)] 
Updates to WAL support in os_win.c: pulled in latest changes from src/os_unix.c; updated tracing; misc. improvements.

FossilOrigin-Name: 76504726a1ef7f6a0445ec800776462138b22d72

15 years agoRemove the OP_Variable optimization of check-in [48b77b04935d894] since it
drh [Wed, 12 May 2010 13:50:23 +0000 (13:50 +0000)] 
Remove the OP_Variable optimization of check-in [48b77b04935d894] since it
can lead to malfunctions as described in ticket [26ff0c82d1e90].

FossilOrigin-Name: 7838163d087780a6fb403a17641b96f71baec088

15 years agoRemove a branch made redundant by the earlier exclusive-mode changes.
dan [Wed, 12 May 2010 06:54:31 +0000 (06:54 +0000)] 
Remove a branch made redundant by the earlier exclusive-mode changes.

FossilOrigin-Name: c501b2ede6aad123bef0aa7ce8b356a134eb6d26

15 years agoHave os_unix.c use the suffix "-wal-index" for wal-index files instead of "-wal-inde".
dan [Tue, 11 May 2010 16:29:54 +0000 (16:29 +0000)] 
Have os_unix.c use the suffix "-wal-index" for wal-index files instead of "-wal-inde".

FossilOrigin-Name: 885e854e7cdc79ecc9d5772d563ddc0f61753ab6

15 years agoWhen an attempt to change journal_mode fails due to locks, be sure to
drh [Tue, 11 May 2010 14:00:39 +0000 (14:00 +0000)] 
When an attempt to change journal_mode fails due to locks, be sure to
leave internal structures in a consistent state.

FossilOrigin-Name: cf3d1e0b8a739302cf2848ac3e6eaaae04e6a44c

15 years agoChanges so that WAL and exclusive-locking mode work together.
dan [Tue, 11 May 2010 12:19:26 +0000 (12:19 +0000)] 
Changes so that WAL and exclusive-locking mode work together.

FossilOrigin-Name: 71e7b1cf9f4cd02a2a9bc8a3e58acd7a7e3c7e60

15 years agoInitial port of WAL VFS support from os_unix.c to os_win.c.
shaneh [Tue, 11 May 2010 02:49:39 +0000 (02:49 +0000)] 
Initial port of WAL VFS support from os_unix.c to os_win.c.

FossilOrigin-Name: 111ad59f21d53d1ec63c084ca5f98f2aaf7cd070

15 years agoUpdates for to WAL TCL test scripts to support running on Windows.
shaneh [Tue, 11 May 2010 02:46:16 +0000 (02:46 +0000)] 
Updates for to WAL TCL test scripts to support running on Windows.

FossilOrigin-Name: 6a5630806c87b0f4e5632c37c357f98effd9608a

15 years agoFix an off-by-one error while constructing the name of the mmap file for
drh [Mon, 10 May 2010 19:51:32 +0000 (19:51 +0000)] 
Fix an off-by-one error while constructing the name of the mmap file for
the wal-index under os_unix.c.

FossilOrigin-Name: 6e3735f72cb7d2f4d16c8f9bc59ff159c75243e5

15 years agoMerge [96d6eaf4d2] and [40b0a6357b].
dan [Mon, 10 May 2010 18:10:17 +0000 (18:10 +0000)] 
Merge [96d6eaf4d2] and [40b0a6357b].

FossilOrigin-Name: c67756c404669141fa06a1ce3f1efadefa277bc6

15 years agoFix an uninitialized variable in OSX proxy locking.
drh [Mon, 10 May 2010 17:29:28 +0000 (17:29 +0000)] 
Fix an uninitialized variable in OSX proxy locking.

FossilOrigin-Name: 96d6eaf4d2be453191b36875811d9556ad0763ed

15 years agoModify the format of the wal-index to use a hash table to index log file segments.
dan [Mon, 10 May 2010 14:46:09 +0000 (14:46 +0000)] 
Modify the format of the wal-index to use a hash table to index log file segments.

FossilOrigin-Name: 40b0a6357b160e04326ab176955a68a1cf3f8b7c

15 years agoIf an ATTACH command files due to OP_JournalMode but still attaches the
drh [Mon, 10 May 2010 14:10:57 +0000 (14:10 +0000)] 
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

15 years agoEnhance the OP_JournalMode opcode with an ignore-errors option and use that
drh [Mon, 10 May 2010 11:20:05 +0000 (11:20 +0000)] 
Enhance the OP_JournalMode opcode with an ignore-errors option and use that
option the ATTACH command.

FossilOrigin-Name: 0bdea4cfbd7832f2a00c01b93c92ba13d20139ef

15 years agoWhen running a checkpoint while in locking_mode=EXCLUSIVE, be sure to move
drh [Fri, 7 May 2010 20:34:17 +0000 (20:34 +0000)] 
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

15 years agoChange the xShmOpen() method of the VFS to take the database file name as
drh [Fri, 7 May 2010 20:02:23 +0000 (20:02 +0000)] 
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

15 years agoAdditional tweaks to API documentation. No functional code changes.
drh [Fri, 7 May 2010 18:23:24 +0000 (18:23 +0000)] 
Additional tweaks to API documentation.  No functional code changes.

FossilOrigin-Name: e1230782a371f09cd46dacc8ecbc6a0c5baab2d5

15 years agoUpdates to documentation on the C interfaces supporting WAL. No functional
drh [Fri, 7 May 2010 13:57:11 +0000 (13:57 +0000)] 
Updates to documentation on the C interfaces supporting WAL.  No functional
changes to code.

FossilOrigin-Name: 681ba20cf077e9a0fccd51ed50101ad0f2c67eb3

15 years agoFix a recently introduced problem in wal.test.
dan [Fri, 7 May 2010 13:52:42 +0000 (13:52 +0000)] 
Fix a recently introduced problem in wal.test.

FossilOrigin-Name: 79b52d0ff7a7b717bde55b97ff05ad17418bc7d7

15 years agoChange wal.test and walhook.test so that they work with DEFAULT_AUTOVACUUM=1 builds.
dan [Fri, 7 May 2010 12:49:22 +0000 (12:49 +0000)] 
Change wal.test and walhook.test so that they work with DEFAULT_AUTOVACUUM=1 builds.

FossilOrigin-Name: 4cde92909c20982f7d4e6b550f55d786df398ccd

15 years agoTest another IO error case in wal.c.
dan [Fri, 7 May 2010 09:43:50 +0000 (09:43 +0000)] 
Test another IO error case in wal.c.

FossilOrigin-Name: 8b3b5ab8fa61ca4ef22c98abaab397707ee74ea3

15 years agoFix a problem with checkpointing large log files created by an external process.
dan [Fri, 7 May 2010 06:59:08 +0000 (06:59 +0000)] 
Fix a problem with checkpointing large log files created by an external process.

FossilOrigin-Name: 8f94bde568be52ecc5a976b7a09776ea7b4bb511

15 years agoSince walIndexTryHdr() can no longer encounter any error conditions, change tehe...
dan [Fri, 7 May 2010 05:46:23 +0000 (05:46 +0000)] 
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

15 years agoAnother attempt to fix permutations.test so that it excludes WAL tests
drh [Fri, 7 May 2010 00:28:41 +0000 (00:28 +0000)] 
Another attempt to fix permutations.test so that it excludes WAL tests
from the journaltest permutation.

FossilOrigin-Name: 58c404429c5af167a82899fc4c736ed7489ed746

15 years agoRemove savepoint6.test from the set of tests run by journaltest since
drh [Thu, 6 May 2010 22:21:14 +0000 (22:21 +0000)] 
Remove savepoint6.test from the set of tests run by journaltest since
savepoint6.test uses journal_mode=WAL.

FossilOrigin-Name: 811b45a96bfaa0ef2394b86c06e8f099a07ee9f0

15 years agoThe PRAGMA journal_mode=WAL; command now makes WAL the default journal mode
drh [Thu, 6 May 2010 21:37:22 +0000 (21:37 +0000)] 
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

15 years agoMake sure to do a clean shutdown of the library upon existing the shell
drh [Thu, 6 May 2010 20:19:55 +0000 (20:19 +0000)] 
Make sure to do a clean shutdown of the library upon existing the shell
in order to remove WAL files.

FossilOrigin-Name: c1762dda00b8bdb7c3247617ac4cb654f1d95cf7

15 years agoExclude all WAL tests from the journaltest permutation.
drh [Thu, 6 May 2010 19:55:57 +0000 (19:55 +0000)] 
Exclude all WAL tests from the journaltest permutation.

FossilOrigin-Name: 46c97d7eee9359cd21139a6520633f5d16594ab0

15 years agoChanges to support SQLITE_OMIT_WAL.
shaneh [Thu, 6 May 2010 19:20:29 +0000 (19:20 +0000)] 
Changes to support SQLITE_OMIT_WAL.

FossilOrigin-Name: 32a8501d78714cc390eba5f993f329ef3b499878

15 years agoUpdates to the VFS SHM locking documentation.
drh [Thu, 6 May 2010 19:04:48 +0000 (19:04 +0000)] 
Updates to the VFS SHM locking documentation.

FossilOrigin-Name: 9927ce421090ac20285cf05768b38e1f91826a68

15 years agoInstead of transitioning to RECOVER state from CHECKPOINT when a recovery is required...
dan [Thu, 6 May 2010 18:48:27 +0000 (18:48 +0000)] 
Instead of transitioning to RECOVER state from CHECKPOINT when a recovery is required, perform the recovery while holding the CHECKPOINT lock.

FossilOrigin-Name: bb0b6021e721c2e4f1533ab18381604c6b7b31d5

15 years agoIf recovery is run before a checkpoint, change back to a CHECKPOINT lock before perfo...
dan [Thu, 6 May 2010 18:27:19 +0000 (18:27 +0000)] 
If recovery is run before a checkpoint, change back to a CHECKPOINT lock before performing the actual checkpoint.

FossilOrigin-Name: dc98ee169cfa43c89f1b36fb1150d4788710fda3

15 years agoOnly pass -1 as the size parameter to xShmGet when the caller does not care what...
dan [Thu, 6 May 2010 18:04:50 +0000 (18:04 +0000)] 
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

15 years agoFix a bug whereby an old snapshot could be checkpointed (and subsequent transactions...
dan [Thu, 6 May 2010 17:28:08 +0000 (17:28 +0000)] 
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

15 years agoAfter throwing an error to say that one cannot change into WAL mode within
drh [Thu, 6 May 2010 16:06:38 +0000 (16:06 +0000)] 
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

15 years agoFurther coverage tests.
dan [Thu, 6 May 2010 15:56:28 +0000 (15:56 +0000)] 
Further coverage tests.

FossilOrigin-Name: 98a9713e0030a36ea99a18a12a2e7685c6db72b3

15 years agoUpdate configure scripts for WAL support.
shaneh [Thu, 6 May 2010 15:35:59 +0000 (15:35 +0000)] 
Update configure scripts for WAL support.

FossilOrigin-Name: 2edc5129f216abec9b13a0ad9b6640606caa9f72

15 years agoAdd tests to cover a couple of branches in wal.c.
dan [Thu, 6 May 2010 14:42:34 +0000 (14:42 +0000)] 
Add tests to cover a couple of branches in wal.c.

FossilOrigin-Name: 429f437fb776fc974a6adf791b729e25bea82fef

15 years agoUnset a tcl variable before reusing it in wal.test.
dan [Thu, 6 May 2010 13:36:47 +0000 (13:36 +0000)] 
Unset a tcl variable before reusing it in wal.test.

FossilOrigin-Name: e83efb232fe8d30714f4c7cffeef80092aea4df7

15 years agoAdd tests for some lock-contention cases.
dan [Thu, 6 May 2010 12:15:48 +0000 (12:15 +0000)] 
Add tests for some lock-contention cases.

FossilOrigin-Name: f0fcb9c9a67e2bf7bbedbedbc27791b605a21dd1

15 years agoRemove the noop-mutex implementations of mutex_held() and mutex_notheld()
drh [Thu, 6 May 2010 11:56:52 +0000 (11:56 +0000)] 
Remove the noop-mutex implementations of mutex_held() and mutex_notheld()
since they are both unreachable.

FossilOrigin-Name: 6767b62a9a063582889f5ceb42f95eab24c697da

15 years agoAdd two text files containing pager design notes to the doc/ subfolder.
drh [Thu, 6 May 2010 11:55:56 +0000 (11:55 +0000)] 
Add two text files containing pager design notes to the doc/ subfolder.

FossilOrigin-Name: ed817fc893e7162ae0ff4022591f7e9e3b81d622

15 years agoAdd test cases to test the libraries handling of corrupt wal-index headers.
dan [Thu, 6 May 2010 11:32:09 +0000 (11:32 +0000)] 
Add test cases to test the libraries handling of corrupt wal-index headers.

FossilOrigin-Name: 9465b267d420120c050bbe4f143ac824146a9e4a

15 years agoAdd tests for handling errors returned by xShm VFS methods.
dan [Thu, 6 May 2010 07:43:58 +0000 (07:43 +0000)] 
Add tests for handling errors returned by xShm VFS methods.

FossilOrigin-Name: fbbcacb137e8f5246b88ad09331236aaa1900f60

15 years agoChange the behavior of the sqlite3_wal_hook() callback. It should now return
drh [Wed, 5 May 2010 20:00:25 +0000 (20:00 +0000)] 
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

15 years agoFurther simplifications to the SHM locking logic. Remove the SQLITE_SHM_QUERY
drh [Wed, 5 May 2010 19:09:49 +0000 (19:09 +0000)] 
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

15 years agoTest the handling of errors returned by the xShmXXX() APIs.
dan [Wed, 5 May 2010 19:04:59 +0000 (19:04 +0000)] 
Test the handling of errors returned by the xShmXXX() APIs.

FossilOrigin-Name: 72663123d6be2b194cad7a6057d0f20dd0d9fe05

15 years agoDo not compare page sizes on source and destination of backup until
drh [Wed, 5 May 2010 18:46:44 +0000 (18:46 +0000)] 
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

15 years agoSimplifications to the SHM locking implementation in os_unix.c.
drh [Wed, 5 May 2010 18:20:07 +0000 (18:20 +0000)] 
Simplifications to the SHM locking implementation in os_unix.c.

FossilOrigin-Name: 9de05bfb09e29bafdf5782263330fe8eefcfaba3

15 years agoProhibit backup if the destination is using WAL and has a different page
drh [Wed, 5 May 2010 16:23:26 +0000 (16:23 +0000)] 
Prohibit backup if the destination is using WAL and has a different page
size from the source.

FossilOrigin-Name: 7bd44794c482beee16c684712545275e2bf63dfa

15 years agoWhen closing a WAL database, if the exclusive lock on the database file is obtained...
dan [Wed, 5 May 2010 15:33:05 +0000 (15:33 +0000)] 
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

15 years agoMake sure the page size of the main database is fixed following a
drh [Wed, 5 May 2010 04:11:44 +0000 (04:11 +0000)] 
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

15 years agoDo not attempt to modify the page_size when running VACUUM on a WAL database.
drh [Wed, 5 May 2010 03:39:53 +0000 (03:39 +0000)] 
Do not attempt to modify the page_size when running VACUUM on a WAL database.

FossilOrigin-Name: 58a1a59be89b33c6d5fa8b43571037d7d96625a1

15 years agoGet the previous mutex fix working with SQLITE_DEBUG and with the amalgamation.
drh [Wed, 5 May 2010 00:22:21 +0000 (00:22 +0000)] 
Get the previous mutex fix working with SQLITE_DEBUG and with the amalgamation.

FossilOrigin-Name: df19928f7ee94bca3989313ff16507c15d6efe2b

15 years agoWhen the in single-threaded mode, the sqlite3_mutex_alloc() interface
drh [Wed, 5 May 2010 00:05:24 +0000 (00:05 +0000)] 
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

15 years agoWhen sqlite3PagerPagecount() is called without any locks, always return
drh [Tue, 4 May 2010 18:50:40 +0000 (18:50 +0000)] 
When sqlite3PagerPagecount() is called without any locks, always return
the physical file size, not the logical file size.

FossilOrigin-Name: 4016b422286587beda7323052d27821adb1fed73

15 years agoBe sure to release all wal-index locks before closing the wal-index.
drh [Tue, 4 May 2010 17:38:42 +0000 (17:38 +0000)] 
Be sure to release all wal-index locks before closing the wal-index.

FossilOrigin-Name: b15b67fa14ff77963f470678ff6188c63be8e079

15 years agoRelax an over-zealous assert() in sqlite3WalUndo().
drh [Tue, 4 May 2010 17:20:09 +0000 (17:20 +0000)] 
Relax an over-zealous assert() in sqlite3WalUndo().

FossilOrigin-Name: 8f9d22d58c75ad7476c1eea8ba296347e30b7beb

15 years agoTake care not to invoke the xShmClose method of the VFS with a NULL
drh [Tue, 4 May 2010 16:33:37 +0000 (16:33 +0000)] 
Take care not to invoke the xShmClose method of the VFS with a NULL
shared memory object.

FossilOrigin-Name: 1465d3842c52aa7471f63deb47fe5b256d4e01c2

15 years agoAdd a test case to verify that log files containing pages that are not a power-of...
dan [Tue, 4 May 2010 15:20:45 +0000 (15:20 +0000)] 
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

15 years agoFix problems with recovering wal files that use a page-size other than the default.
dan [Tue, 4 May 2010 14:47:39 +0000 (14:47 +0000)] 
Fix problems with recovering wal files that use a page-size other than the default.

FossilOrigin-Name: 1a391f3c55dc9d4266552fa26d2a9839c6bafce4

15 years agoFix a typo in walfault.test.
dan [Tue, 4 May 2010 11:06:03 +0000 (11:06 +0000)] 
Fix a typo in walfault.test.

FossilOrigin-Name: 232dbe8ecec16485be5c5995fdf7a0ed951c2097

15 years agoTest that the correct number of padding frames are appended to the log file after...
dan [Tue, 4 May 2010 10:36:20 +0000 (10:36 +0000)] 
Test that the correct number of padding frames are appended to the log file after committing a transaction in synchronous=FULL mode.

FossilOrigin-Name: a60104aa7e38e7d9f2ff2eae02687dc9c5dd5d77

15 years agoUnset some global TCL variables prior to use in test where prior tests can
drh [Mon, 3 May 2010 19:20:46 +0000 (19:20 +0000)] 
Unset some global TCL variables prior to use in test where prior tests can
have those same variables set to an array value.

FossilOrigin-Name: 49bef00e5cda600ceb964148bf745de4aff1ab62

15 years agoFix a bug in the computation of the current time for the alternative
drh [Mon, 3 May 2010 19:17:01 +0000 (19:17 +0000)] 
Fix a bug in the computation of the current time for the alternative
CURRENT_TIMESTAMP functions used when SQLITE_OMIT_DATETIME is defined.

FossilOrigin-Name: e7ded46b5efabe521008d9043dd72bd1ca748316

15 years agoDocumentation stubs for sqlite3_wal_autocheckpoint and sqlite3_wal_checkpoint.
drh [Mon, 3 May 2010 18:51:41 +0000 (18:51 +0000)] 
Documentation stubs for sqlite3_wal_autocheckpoint and sqlite3_wal_checkpoint.

FossilOrigin-Name: 313762427d96954667909887a797ea996dc6304a

15 years agoFix a bug in the xCurrentTime() method of the os_unix.c VFS.
drh [Mon, 3 May 2010 18:22:52 +0000 (18:22 +0000)] 
Fix a bug in the xCurrentTime() method of the os_unix.c VFS.

FossilOrigin-Name: 551df11a5613e3edc6c5de44f0ac6abc2d0e6cdf

15 years agoAdd a test to simulate an OOM during log recovery to walfault.test.
dan [Mon, 3 May 2010 18:01:21 +0000 (18:01 +0000)] 
Add a test to simulate an OOM during log recovery to walfault.test.

FossilOrigin-Name: 7ed85e87dd206083310ba28afab4389885f61dac

15 years agoClear global variable "seconds" before use in walthread.test.
drh [Mon, 3 May 2010 17:24:45 +0000 (17:24 +0000)] 
Clear global variable "seconds" before use in walthread.test.

FossilOrigin-Name: a35551a5305b5160b0eb511da7f8e6fb351ef271

15 years agoFix a couple of errors in WAL code that can occur in an OOM situation.
dan [Mon, 3 May 2010 17:18:24 +0000 (17:18 +0000)] 
Fix a couple of errors in WAL code that can occur in an OOM situation.

FossilOrigin-Name: 9d3f3736be42ef8ab48b099d4712e08dfca97873

15 years agoUpdate the crash-test VFS in test6.c to pass-through the shared-memory
drh [Mon, 3 May 2010 16:36:55 +0000 (16:36 +0000)] 
Update the crash-test VFS in test6.c to pass-through the shared-memory
methods to the real underlying VFS.  This fixes the walcrash.test script.

FossilOrigin-Name: ea09ff37911376505e8262ee9841224995b696f2

15 years agoChange the VFS definition so that all methods take a VFS object pointer as
drh [Mon, 3 May 2010 16:30:27 +0000 (16:30 +0000)] 
Change the VFS definition so that all methods take a VFS object pointer as
their first parameter.

FossilOrigin-Name: 43b5b07f0d996d7ef7426346b1792e9ca898f487

15 years agoHave sqlite3_wal_checkpoint() handle a zero-length string in the same way as a NULL...
dan [Mon, 3 May 2010 15:58:50 +0000 (15:58 +0000)] 
Have sqlite3_wal_checkpoint() handle a zero-length string in the same way as a NULL pointer. Fix "PRAGMA wal_checkpoint" so that it checkpoints all attached databases.

FossilOrigin-Name: 7fecd21f45b9ce773ffbcef6c84066474e8cd01c

15 years agoUse VFS method xCurrentTimeInt64 instead of xCurrentTime when it is available.
drh [Mon, 3 May 2010 14:32:30 +0000 (14:32 +0000)] 
Use VFS method xCurrentTimeInt64 instead of xCurrentTime when it is available.
Provide an implementation of xCurrentTimeInt64 for os_unix.c.

FossilOrigin-Name: ab77b3ae6da3370d8bc3b2c9c0edc723b69f5a95

15 years agoMerge the write-ahead-logging changes into the trunk.
drh [Mon, 3 May 2010 14:08:27 +0000 (14:08 +0000)] 
Merge the write-ahead-logging changes into the trunk.

FossilOrigin-Name: de9ae443cc8eebfb0692dcdac93bde9e4c54199a

15 years agoIf the sqlite3_wal_checkpoint() API is passed a NULL pointer in place of a database... wal
dan [Mon, 3 May 2010 14:05:43 +0000 (14:05 +0000)] 
If the sqlite3_wal_checkpoint() API is passed a NULL pointer in place of a database name, attempt to checkpoint all attached databases.

FossilOrigin-Name: 27a5c09ce8a35039d844d08cfe5698e8b438abfe

15 years agoMake sure the mutex is held while calling sqlite3ApiExit() in
drh [Mon, 3 May 2010 13:37:30 +0000 (13:37 +0000)] 
Make sure the mutex is held while calling sqlite3ApiExit() in
sqlite3_wal_checkpoint().  Other cleanup of WAL logic.

FossilOrigin-Name: 11a85b821abff1ecb7ec8c37bc7783be9fc4ea6d

15 years agoHave sqlite3_wal_checkpoint() populate the database handle error message and error...
dan [Mon, 3 May 2010 12:14:15 +0000 (12:14 +0000)] 
Have sqlite3_wal_checkpoint() populate the database handle error message and error code (as returned by sqlite3_errmsg() and sqlite3_errcode()).

FossilOrigin-Name: ff234cf574c7ae384ab1ebc79b2171ef0541bc91

15 years agoAdd the "PRAGMA wal_autocheckpoint" command. Rename "PRAGMA checkpoint" to "PRAGMA...
dan [Mon, 3 May 2010 11:05:08 +0000 (11:05 +0000)] 
Add the "PRAGMA wal_autocheckpoint" command. Rename "PRAGMA checkpoint" to "PRAGMA wal_checkpoint".

FossilOrigin-Name: 714e5947264571386f966aa8fcdd5607b5832238

15 years agoMerge two wal leaves.
dan [Mon, 3 May 2010 08:19:34 +0000 (08:19 +0000)] 
Merge two wal leaves.

FossilOrigin-Name: 23c0e6c3f333e878fe5a2ae5d61df0d765f437b4

15 years agoAdd the sqlite3_wal_checkpoint() and sqlite3_wal_autocheckpoint() APIs.
dan [Mon, 3 May 2010 08:04:49 +0000 (08:04 +0000)] 
Add the sqlite3_wal_checkpoint() and sqlite3_wal_autocheckpoint() APIs.

FossilOrigin-Name: 9803196dec85e3aa4105cc477e9cfe98d370e486