Thanks to visit codestin.com
Credit goes to chromium.googlesource.com
Sign in
chromium
/
external
/
github.com
/
sqlite
/
sqlite
/
HEAD
/
src
/
wal.c
1ea6a53
Avoid writing frames with no checksums into the wal file if a savepoint is rolled back after dirty pages have already been spilled into the wal file. Possible fix for [forum:/forumpost/b490f726db | forum post b490f726db].
by dan
· 5 weeks ago
140748f
Fix harmless compiler warning introduced by the setlk-snapshot-fix merge.
by drh
· 7 weeks ago
ded1959
If blocking locks are enabled, avoid using the busy handler when blocked by another process running recovery.
by dan
· 7 weeks ago
b0c3118
Clarify and reduce redundancy in an assert() in walChecksumBytes().
by drh
· 4 months ago
cebf06c
Make use of the flexible-array feature of C99, when available, to try to
by drh
· 4 months ago
58bc525
Reinstate the assert() removed by [0f6223b8]. Avoid holding a wal-mode write lock after the transaction has been rolled back if an IO error occurs while restarting the wal file.
by dan
· 5 months ago
a4cf066
Remove an assert() added by [e88212b1] that is sometimes false.
by dan
· 5 months ago
b081a39
Merge latest changes from trunk into this branch.
by dan
· 5 months ago
win32-enable-setlk
ef86b94
Code changes that make it easier to prove that no 32-bit integer overflows
by drh
· 5 months ago
df54ecb
Fix a problem causing the write-lock to be held when it should not be in some circumstances following a SEH exception.
by dan
· 6 months ago
43aad25
Add the sqlite3_setlk_timeout() API. For setting the timeout used by SQLITE_ENABLE_SETLK_TIMEOUT blocking locks without also setting the regular retry-based busy-timeout.
by dan
· 6 months ago
2539fb2
Fix a race condition causing SQLite to use a busy-handler for an operation that should not.
by dan
· 6 months ago
32dd04b
Code formatting changes to make trunk more like wal2.
by drh
· 7 months ago
276172e
Remove unnecessary end-of-line whitespace.
by drh
· 7 months ago
624cb96
An assortment of comment typo fixes discovered by aspell. Add several new words to tool/custom.txt. No code changes.
by stephan
· 9 months ago
d0720ee
When possible, avoid taking wal file read-lock 0 in sqlite3_snapshot_get().
by dan
· 10 months ago
5600adf
Move the vfstrace extension out of src/ over into ext/misc/ where it belongs.
by drh
· 10 months ago
5fdabcf
Put an SQLITE_ENABLE_SETLK_TIMEOUT branch inside the appropriate ifdef with
by drh
· 1 year, 6 months ago
4e50f77
Ensure that SQLITE_PROTOCOL is not returned too early when a SQLITE_ENABLE_SETLK_TIMEOUT build fails to open a transaction on a wal mode database in cases where blocking locks are not being used.
by dan
· 1 year, 6 months ago
enable-setlk-fix
f5740f7
Adjust the sqlite3PagerDirectReadOk() routine (part of the
by drh
· 1 year, 7 months ago
940b23b
In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() calls when opening a read-transaction.
by dan
· 1 year, 8 months ago
b8950e0
Handle an SQLITE_BUSY_TIMEOUT error if one occurs while attempting a shared lock on a read-lock slot.
by dan
· 1 year, 8 months ago
blocking-dms-lock
bae2d0f
Have SQLITE_ENABLE_SETLK_TIMEOUT builds block when locking a read-lock slot.
by dan
· 1 year, 8 months ago
e52854a
In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() when opening a read-transaction.
by dan
· 1 year, 8 months ago
91c8e65
Changes so that if SQLITE_ENABLE_SETLK_TIMEOUT is defined as 2 instead of 1, all blocking locks are taken for a single millisecond and the default busy-handler invoked as normal.
by dan
· 1 year, 8 months ago
0ad5301
Avoid blocking as part of passive checkpoint operations, even if SQLITE_ENABLE_SETLK_TIMEOUT is defined.
by dan
· 1 year, 8 months ago
36a9f5c
Fix a possible UAF in SEH if an exception occurs at an inopportune moment
by drh
· 1 year, 11 months ago
9541fbc
Fix a problem in sqlite3_snapshot_recover() introduced by the [8a6b0c24937e855b] merge.
by dan
· 1 year, 11 months ago
5e22dfb
Add a comment describing the contents of the ExceptionInformation[] array for win32 EXCEPTION_IN_PAGE_ERROR exceptions. No changes to code.
by dan
· 2 years ago
5202b7c
Update the latest trunk enhancements into the wal-shm-exceptions branch.
by drh
· 2 years ago
8a11049
Reduce divergence between branches: trunk and wal-shm-exceptions.
by drh
· 2 years ago
66422b5
Get fault injection for testing working correctly. Other code clean-up.
by drh
· 2 years ago
5d3cc0c
Fix a warning. Unclear yet if the code is correct this way or not.
by drh
· 2 years ago
cc9380f
Merge the latest trunk enhancements into the wal-shm-exceptions branch.
by drh
· 2 years ago
ff96718
Merge all recent trunk enhancements into the wal-shm-exceptions branch.
by drh
· 2 years ago
55be216
Fix straggler misspellings and tidy the custom dictionary. Also include pickups from [forum:/info/c61fb09afd|forum post c61fb09afd].
by larrybr
· 2 years, 1 month ago
spell-check
bc91738
Add a C-source spell-checking facility. make misspell (on Nix)
by larrybr
· 2 years, 1 month ago
dda2833
Add a comment to the [0512f82a2cde7447] change to link it to its TH3 test case.
by drh
· 2 years, 3 months ago
ce2aa8b
If the page size is wrong on the page1 content inside a WAL file, then
by drh
· 2 years, 3 months ago
3f4a319
Unwrap the loop in the WAL hash function.
by drh
· 2 years, 3 months ago
fc7f8f8
Back out the optimization at [1a8c2e54375ee2cf7] because there are some
by drh
· 3 years ago
3325a5c
Size reduction and performance optimization in sqlite3WalFindFrame().
by drh
· 3 years, 1 month ago
f208abd
A better and more robust fix for the problem of reading a read-only WAL
by drh
· 3 years, 6 months ago
d6b44ec
Fix the ability to read read-only WAL-mode database when -shm is present,
by drh
· 3 years, 6 months ago
e574a92
Fixes to internal comments. No changes to code or documentation.
by drh
· 3 years, 8 months ago
eaad533
Ensure that all possible outcomes for walIndexPage() are accounted for by
by drh
· 3 years, 9 months ago
wal-tuneup
71c3ea7
Avoid the 1-based indexing on the WalHashLoc.aPgno[] array. Make it 0-indexed
by drh
· 3 years, 9 months ago
5f25627
Improve the comment on walIndexPage() to more accurately describe the
by drh
· 3 years, 9 months ago
9023444
If an EXCEPTION_IN_PAGE_ERROR exception is caught, make the underlying OS error code available via sqlite3_system_errno().
by dan
· 3 years, 10 months ago
ee7c667
Change the structuree exception handler in wal.c to catch EXCEPTION_IN_PAGE_ERROR instead of EXCEPTION_ACCESS_VIOLATION.
by dan
· 3 years, 11 months ago
67ae593
Use VVA_ONLY() instead of TESTONLY() in SEH macros so that the build
by drh
· 4 years ago
5b6c3c8
Add missing SEH_INJECT_FAULT macros.
by dan
· 4 years ago
c6effdb
Add some assert() statements and fix small issues with code on this branch.
by dan
· 4 years ago
b15c63c
Fix a problem on this branch causing checkpoints that do not proceed because they can't get the CHECKPOINT lock to return incorrect output values.
by dan
· 4 years ago
aecd7f9
Enable this branch to run both with and without the -DSQLITE_USE_SEH option.
by drh
· 4 years ago
8aa22ff
If SQLITE_USE_SEH is defined, handle structured-exceptions thrown by MSVC builds if the *-shm file mapping is accessed after it becomes invalid for some reason.
by dan
· 4 years ago
f873392
Enhance the wal.c source file with an ASCII-art schematic of the -shm file
by drh
· 4 years ago
944d85d
Fix an error in one of the assert() statements added by [23b08fe9db24a953].
by drh
· 4 years ago
fd4c786
Improve comments and add new assert() statements in WAL to help document
by drh
· 4 years ago
0449f65
Fix a harmless "unused variable" warning when compiling with
by drh
· 4 years, 3 months ago
91faeec
Modify a test for corruption within the wal checkpoint code to account for the pending-byte page. And for the fact that test configurations might move the pending-byte page.
by dan
· 5 years ago
799443b
Do the oversize-WAL corruption test before the size hint is issued.
by drh
· 5 years ago
88819d5
Return an SQLITE_CORRUPT error if the final expected size of the database when checkpointing is not reasonable - where reasonable is defined (basically) as the sum of the sizes of the database and wal files.
by dan
· 5 years ago
e592c18
Provide an alternative "guaranteed-safe" method for overwriting the WAL index
by drh
· 5 years ago
8deae5a
Fix signed/unsigned compiler warnings.
by drh
· 5 years ago
e7f3edc
Add an sqlite3FaultSim() to make an OOM case more accessible and remove
by drh
· 5 years ago
unlocked-recovery
f31230a
On recovery, always overwrite the old with the new, even if they are the same.
by drh
· 5 years ago
8caebb2
Improved error reporting if walLockExclusive() fails.
by drh
· 5 years ago
d3e38b7
Allow a wal mode recovery to proceed even if there are readers.
by dan
· 5 years ago
4ffaa7c
Passive checkpoints do not use the busy-handler. So, in order to minimize visible changes for legacy applications, do not enable blocking locks for passive checkpoints.
by dan
· 5 years ago
wal-setlk-changes
ec206a7
Use AtomicStore() to set values in the wal-index hash table.
by dan
· 5 years ago
91960aa
Make sure variable declarations are at start of scope even when
by drh
· 5 years ago
5a8cd2e
Add compiler hints to disable TSAN for the routines that access the -shm
by drh
· 5 years ago
f16cf65
In wal.c, improved comments on concurrency issues. More use of
by drh
· 5 years ago
d924e7b
Use the sqlite3Realloc() interface internally, rather than the public
by drh
· 5 years ago
8b4f231
Use AtomicStore() and AtomicLoad() in a few more places to avoid a theoretically undefined behaviour. This is not actually problem on any known hardware.
by dan
· 5 years ago
bc9fc18
Fix an assert() failure that could follow an IO error.
by dan
· 5 years ago
783e159
Fix harmless compiler warnings.
by drh
· 5 years ago
7bb8b8a
Add error code SQLITE_BUSY_TIMEOUT, used internally by the OS layer to indicate that a call to xShmLock() has failed due to timeout of a blocking lock.
by dan
· 5 years ago
fc87ab8
Fix compiler warnings in non-SQLITE_ENABLE_SETLK_TIMEOUT builds.
by dan
· 5 years ago
861fb1e
Block on the WRITER lock when attempting to run recovery.
by dan
· 5 years ago
d0e6d13
Add tests for running recovery when opening a write transaction or performing a checkpoint with blocking locks enabled. Fix some failing assert() statements.
by dan
· 5 years ago
58021b2
Unless upgrading an existing read transaction, have ENABLE_SETLK_TIMEOUT builds attempt to use a blocking lock when opening a write transaction on a wal mode database.
by dan
· 5 years ago
8714de9
Changes to avoid deadlock in SQLITE_ENABLE_SETLK_TIMEOUT builds.
by dan
· 5 years ago
fcf31b2
Add the SQLITE_FCNTL_CKPT_START file-control. Use it to optimize the
by drh
· 5 years ago
ckpt-start-fcntl
892edb6
Use __atomic_load_n() and __atomic_store_n() for a few more things where they are available.
by dan
· 5 years ago
3e42b99
Fix "GCC_VESRION" typo in wal.c.
by dan
· 5 years ago
97ccc1b
Modifications to the way blocking locks are used in SQLITE_ENABLE_SETLK_TIMEOUT builds so that multiple processes or threads may not deadlock when operating on a single database.
by dan
· 5 years ago
setlk-deadlock-fix
b48c0d5
Simplify the code by removing the unsupported and undocumented
by drh
· 5 years ago
1d7d8c8
Add the SQLITE_FCNTL_CKPT_DONE file-control for the use of custom VFSs.
by dan
· 6 years ago
2ecf928
More details on the comment justifying the aleged data race in the WAL-mode
by drh
· 6 years ago
55f66b3
Add new assert() statements in an attempt to help static analyzers avoid
by drh
· 6 years ago
680f0fe
Small performance and size optimization in sqlite3WalFindFrame().
by drh
· 6 years ago
f6ad201
Fixes for harmless compiler warnings.
by drh
· 6 years ago
b92d7d2
Add a defense-in-depth NEVER() test to the WAL cleanup code.
by drh
· 6 years ago
8741d0d
Fix a harmless compiler warning that arose from the ENABLE_CURSOR_HINTS
by drh
· 7 years ago
8d4b7a3
If a call to sqlite3_snapshot_open() fails because the requested snapshot no
by dan
· 7 years ago
876c7ea
Try to identify the places in WAL code where thread-safety depends on the
by drh
· 7 years ago
f577875
Fix a problem causing spurious SQLITE_CORRUPT errors when using the snapshot
by dan
· 7 years ago
588032f
Allow sqlite3_snapshot_open() to be called to change the snapshot after a read
by dan
· 7 years ago
Next »