e230a8994e
Snapshot documentation updates. Comment changes only - no changes to code.
...
FossilOrigin-Name: ef51a398a04963508389ffe2f9d8359c1ec48261
2015-12-10 22:48:22 +00:00
a7aeb39836
Return SQLITE_BUSY (not SQLITE_BUSY_SNAPSHOT) if sqlite3_snapshot_open() fails to obtain the shared checkpointer lock.
...
FossilOrigin-Name: 5343060bcc6c99029f731f8020d2cba3f405f207
2015-12-10 19:11:34 +00:00
3bf83ccd70
Have sqlite3_snapshot_open() avoid a race condition by taking a shared CHECKPOINTER lock while checking pInfo->nBackfillAttempted.
...
FossilOrigin-Name: 8084eae0bc4f6513b1147fb890a6b2813f1c0a09
2015-12-10 15:45:15 +00:00
c9fb38e7ad
Fix spacing typo in comment. No changes to code.
...
FossilOrigin-Name: 3a18526fc2253658dad84c5e600481c8a62efe40
2015-12-10 03:16:47 +00:00
998147ec38
Add the nBackfillAttempted field in formerly unused space in WalCkptInfo and
...
use that field to close the race condition on opening a snapshot.
FossilOrigin-Name: cb68e9d0738fc7db7316947b4d2aab91aae819f2
2015-12-10 02:15:03 +00:00
65127cd57d
Update sqlite3_snapshot_open() to reduce the chances of reading a corrupt snapshot created by a checkpointer process exiting unexpectedly.
...
FossilOrigin-Name: 7315f7cbf4179aadda0f1a0baa1526a9b9f9729f
2015-12-09 20:05:27 +00:00
818b11aebb
Add tests for snapshot_get(), _open() and _free().
...
FossilOrigin-Name: 502cc6f353358946080d9bcd335aed526825b88a
2015-12-07 14:33:07 +00:00
fc1acf33b8
Add untested implementations of experimental APIs sqlite3_snapshot_get(), _open() and _free().
...
FossilOrigin-Name: 0715eb00aa8891400cd50a15509d3d7b13789626
2015-12-05 20:51:54 +00:00
ab37277367
Remove more (dead) SQLITE_FCNTL_WAL_BLOCK logic from wal.c - code that was
...
missed during the [e1d5320ca08933] check-in.
FossilOrigin-Name: 58c15c6af964563ac7ece8606d16730ccf9ee72b
2015-12-02 16:10:16 +00:00
5c472d0860
Fix an assert() enabled by SQLITE_ENABLE_EXPENSIVE_ASSERT in wal.c.
...
FossilOrigin-Name: 8d2ed150a7a15626965cf994ef48c3ab61eca6ec
2015-09-09 19:44:33 +00:00
b8c7cfb834
When searching the wal file for a frame, do not search that part that was already checkpointed when the snapshot being read was at the head of the wal file.
...
FossilOrigin-Name: 90760e72327eb0593cbfa6d7058b554198cd8044
2015-08-13 20:23:46 +00:00
6df003c7a5
Avoid reading frames that have already been checkpointed from the wal file.
...
FossilOrigin-Name: 5669ac4a40429abc3f44540fc9d2f3b79b404bdf
2015-08-12 19:42:08 +00:00
6b67a8ae03
Fix harmless compiler warning in MSVC 2015.
...
FossilOrigin-Name: 01c8b9ccfa0f336dfead7c004de3de571753f707
2015-07-21 19:22:35 +00:00
f6bff3f5d6
Avoid a harmless compiler warning.
...
FossilOrigin-Name: 2288842b8f191ff05a157db7f77af867bfa83c4f
2015-07-17 01:16:10 +00:00
f4fa0b8073
Fix some harmless compiler warnings.
...
FossilOrigin-Name: 110cd84f5e842c4dcd9b9398cea211e25f36b3aa
2015-07-15 18:35:54 +00:00
f3cdcdccbe
Use sqlite3_malloc64() in place of sqlite3_malloc() internally.
...
FossilOrigin-Name: 48f553b05c05373c0af4b9c3a542979db3a2ee19
2015-04-29 16:50:28 +00:00
1fe0af200d
Add a comment to wal.c to explain why a race condition is safe.
...
FossilOrigin-Name: bc33af866403c23d548dd4705675315810d52d7f
2015-04-13 17:43:43 +00:00
bbf76eec34
Arrange for some of the transient locks in WAL mode to block, as a single
...
to the OS to fix priority inversions.
FossilOrigin-Name: c6e6d5f4e06c3ac0bfb620c0c728fbc7230c4a02
2015-03-10 20:22:35 +00:00
976b003344
Ensure that "PRAGMA wal_checkpoint = TRUNCATE|FULL|RESTART" block on other connections and truncate the database file as required even if the entire wal file has already been checkpointed.
...
FossilOrigin-Name: 53429689d4fcf472edbc89cc50b5e69ba3270634
2015-01-29 19:12:12 +00:00
622a53d54a
Reinstate an assert() by adding an "|| CORRUPT_DB" term.
...
FossilOrigin-Name: 95ce20348d9b868a0407adccdb222a0e4c762945
2014-12-29 11:50:39 +00:00
a25165fa68
Add an implementation mark and fix a comment describing the OP_Checkpoint
...
opcode.
FossilOrigin-Name: 7475b90c558157802b036162376fceacc1b9ab4a
2014-12-04 04:50:59 +00:00
dd90d7ee81
Add evidence marks and assert()s used as evidence for checkpoint requirements.
...
FossilOrigin-Name: b2da8afc7657266fbe8e683c6e50fe18216cbcf3
2014-12-03 19:25:41 +00:00
0fe8c1b967
When attempting to restart a wal file, make any required calls to sqlite3_randomness() before waiting on or checking for wal file readers. This restores the behaviour exhibited by the trunk.
...
FossilOrigin-Name: 6ee08769f0ffbb3d620c66b89180ece7782dc820
2014-12-02 19:35:09 +00:00
f26a1549ac
Add the SQLITE_CHECKPOINT_TRUNCATE option.
...
FossilOrigin-Name: 8e20a43419e46b6b9d1f60ec7ea420bbfb3ef358
2014-12-02 19:04:54 +00:00
664f85dd59
Add an ALWAYS on an always-true branch in wal.c.
...
Fix the ANALYZE command so that it resets the "unordered" and "noskipscan"
flags on indices when reloading the sqlite_stat1 table.
FossilOrigin-Name: 9ed97a85feee6593faefa2b54cc4cf9a60f515f9
2014-11-19 14:05:41 +00:00
47b7fc7843
Experimental changes that permit read operations to continue after a
...
ROLLBACK, as long as the schema is unchanged.
FossilOrigin-Name: fa6e6a9ae276cad60e9a4abc1bc23cf2809ea786
2014-11-11 01:33:57 +00:00
cbd55b0362
Change the definition of SQLITE_CONFIG_SCRATCH so that at most one scratch
...
buffer is used per thread. Use the generic heap memory allocator for the
WalIterator object when running a checkpoint.
FossilOrigin-Name: 391c9b85abcb5ba300fb2e116384639310c69ed2
2014-11-04 14:22:27 +00:00
60ec914c74
Fix typos in comments. No code changes.
...
FossilOrigin-Name: e62aab5e9290503869e1f4d5e0fefd2b4dee0a69
2014-09-06 16:39:46 +00:00
5b6e3b9781
Increase the WAL-mode SQLITE_PROTOCOL timeout to 10 seconds.
...
FossilOrigin-Name: 2aeacf81df92b4fe5d1825c1dc1cd176b8af8bd9
2014-06-12 17:10:18 +00:00
dd973548f1
Ensure that if the "psow=0" URI option or FCNTL_POWERSAFE_OVERWRITE file-control is used to clear the power-safe overwrite flag, extra padding frames are added to the WAL file.
...
FossilOrigin-Name: 48c821fd97a8f03757c90560c37a46bd0843570e
2014-02-13 19:27:08 +00:00
e5b6ea797e
Avoid passing a flags argument with the internal WAL_SYNC_TRANSACTIONS bit set when calling sqlite3OsSync().
...
FossilOrigin-Name: e3b79e920c298a39613631d689d1a2f182d00496
2014-02-13 18:46:59 +00:00
f73819af05
Add extended error code SQLITE_BUSY_SNAPSHOT - returned in WAL mode when a read-transaction cannot be upgraded to a write-transaction because it is reading from a snapshot other than the most recently committed.
...
FossilOrigin-Name: 361c22969aa75340ed696e00e3dc5d17d5493bee
2013-06-27 11:46:27 +00:00
d040e76442
Add new primary error codes SQLITE_NOTICE and SQLITE_WARNING for use with
...
sqlite3_log(). Add new extended error codes SQLITE_NOTICE_RECOVER_WAL and
SQLITE_NOTICE_RECOVER_ROLLBACK to use with sqlite3_log() messages that occur
on each recovery.
FossilOrigin-Name: be7d2c5482c41baf000d7fb5dccc31b974e91064
2013-04-10 23:48:37 +00:00
f55a4cf80c
Ensure that a checkpoint does not use an out-of-date mapping.
...
FossilOrigin-Name: a1040f0397d57855500926494c978623286ddc77
2013-04-01 16:56:41 +00:00
0943f0bdc8
Fix a typo in a log message in wal.c.
...
FossilOrigin-Name: 83fc48d16572443373e5de62adbd4cd53c2f7786
2013-04-01 14:35:01 +00:00
f23da96636
Replace the sqlite3_io_methods.xMremap interface with sqlite3_io_methods.xFetch and xUnfetch.
...
FossilOrigin-Name: 1431be95579160fb70408d43e17fc23c7b69ab4a
2013-03-23 21:00:41 +00:00
e5586a1a79
Improve a comment in wal.c. No code changes.
...
FossilOrigin-Name: 60b9f5e4dd2af54975ba78437239f0bebd472fd2
2013-03-23 17:29:06 +00:00
99bd10979a
Allow the database file to be memory mapped in wal mode.
...
FossilOrigin-Name: d190ddabc386bc9654b99e33fb81b2f6e67b54d6
2013-03-22 18:20:14 +00:00
7eb0575287
Fix a failing assert() in wal.c.
...
FossilOrigin-Name: 8745530b9a877db77fe2ca3ea9c6bc99ce033055
2012-10-15 11:28:24 +00:00
c9a5326974
Ensure that the value returned by xSectorSize() is reasonable (currently defined as between 2^5 and 2^16 bytes) before using it to calculate the amount of padding to add to a wal file.
...
FossilOrigin-Name: 6b4ff83bff07d427af585c9fd03be90abf2fc82f
2012-10-01 06:50:55 +00:00
d5578433ff
Fix all known instances of 'repeated the' style typos in comments. No changes to code.
...
FossilOrigin-Name: 9b19b847533f944f289d93dcdba29c0d67bf251c
2012-08-25 10:01:29 +00:00
5373b76bdc
Ensure that there is always at least one aReadMark slot usable by an unprivileged reader while a checkpoint is running. Also, if one or more transactions are recovered from a log file, initialize one of the aReadMark slots to contain mxFrame as part of the recovery process.
...
FossilOrigin-Name: e4163596339c2166f9c4356ab824fff8bda8d0b0
2012-07-17 14:37:12 +00:00
610b8d8578
Amplification of a comment in wal.c. Change the aReadMark[] processing so
...
that one read mark is left at zero when a WAL resets.
FossilOrigin-Name: 8c9ee1d78f99394eef73a177141ca9e1c67e4e07
2012-07-17 02:56:05 +00:00
f602963dbc
Fix spurious errors that may occur if an empty database is opened and then initialized as a WAL database by a second connection.
...
FossilOrigin-Name: 16330a2f7262173a32ae48a72c0ee2522b6dc554
2012-02-28 17:57:34 +00:00
70708600b5
Add #ifdef SQLITE_ENABLE_ZIPVFS around those bits of code that are only
...
used by ZIPVFS.
FossilOrigin-Name: 3130275c64a60c5cfacbd11123305e6d99ea866d
2012-02-24 14:33:28 +00:00
bf24261b7b
Fix a typo made inside an assert() statement in the previous commit.
...
FossilOrigin-Name: f0640615f25ebe8bf2eed0e1a0f2e309471889fe
2012-02-23 16:45:42 +00:00
b3bdc72ded
Add the sqlite3PagerWalFramesize() function to pager.c. This is used by zipvfs.
...
FossilOrigin-Name: 786e24dc56504d1958db0618e645610f2600a087
2012-02-23 15:35:49 +00:00
c02372ce6f
Refactor sqlite3OsFileControlNoFail() into sqlite3FileControlHint().
...
FossilOrigin-Name: 722735a4f316630c907149f08d3d7dccc0facd9a
2012-01-10 17:59:59 +00:00
6f2f19a154
Add function sqlite3OsFileControlNoFail(), which is the same as sqlite3OsFileControl() except that it does not simulate OOM errors. This saves adding calls to the BenignMalloc() functions around each of the invocations of sqliteOsFileControl() that ignore the return code.
...
FossilOrigin-Name: af59b182d797642e5ec3ddf291cf62662a136bd1
2012-01-10 16:56:39 +00:00
92c45cf0fe
Remove the BenignMalloc() from around the call to FCNTL_OVERWRITE. Add
...
new ones around sqlite3OsDelete(). Fix an assert that causes problems for
the nx-devkit.
FossilOrigin-Name: 38bc4236d5a9d9f22a525bf9308d90cd4d9ce5a4
2012-01-10 00:24:59 +00:00