Atomic Commit In SQLite
(atomiccommit.html)
3.8. Obtaining An Exclusive Lock
Prior to making changes to the database file itself, we must
obtain an exclusive lock on the database file. Obtaining an
exclusive lock is really a two-step process. First SQLite obtains
a "pending" lock. Then it escalates the pending ...
|
An Asynchronous I/O Module For SQLite
(asyncvfs.html)
... When a connection using asynchronous IO begins a database
transaction, the database is locked immediately. However the
lock is not released until after all relevant operations
in the write-queue have been flushed to disk. This means
(for example) that ...
|
How To Corrupt An SQLite Database File
(howtocorrupt.html)
2.3. Two processes using different locking protocols
The default locking mechanism used by SQLite on unix platforms is
POSIX advisory locking, but there are other options. By selecting an
alternative sqlite3_vfs using the sqlite3_open_v2() interface, an
application can make use of other locking protocols that might be ...
|
C API: Checkpoint a database
(c3ref/wal_checkpoint_v2.html)
sqlite3_wal_checkpoint_v2()
... The SQLITE_CHECKPOINT_FULL, RESTART and TRUNCATE modes also obtain the
exclusive "writer" lock on the database file. If the writer lock cannot be
obtained immediately, and a busy-handler is configured, it is invoked and
the writer lock retried until either ...
|
C API: Online Backup API.
(c3ref/backup_finish.html)
sqlite3_backup_init(), sqlite3_backup_step(), sqlite3_backup_finish(), sqlite3_backup_remaining(), sqlite3_backup_pagecount()
... The source database is read-locked only while it is being read;
it is not locked continuously for the entire backup operation.
Thus, the backup may be performed on a live source database without
preventing other database connections from
reading ...
|
C API: Flags for the xShmLock VFS method
(c3ref/c_shm_exclusive.html)
SQLITE_SHM_UNLOCK, SQLITE_SHM_LOCK, SQLITE_SHM_SHARED, SQLITE_SHM_EXCLUSIVE
These integer constants define the various locking operations
allowed by the xShmLock method of sqlite3_io_methods. The
following are the only legal combinations of flags to the
xShmLock method:
SQLITE_SHM_LOCK | SQLITE_SHM_SHARED
SQLITE_SHM_LOCK | SQLITE_SHM_EXCLUSIVE
SQLITE_SHM_UNLOCK | SQLITE_SHM_SHARED
SQLITE_SHM_UNLOCK | SQLITE_SHM_EXCLUSIVE
When unlocking, the same ...
|
The SQLite OS Interface or "VFS"
(vfs.html)
3.1. Standard Unix VFSes
... unix-dotfile - uses dot-file locking rather than
POSIX advisory locks.
unix-excl - obtains and holds an exclusive lock on
database files, preventing other processes from accessing the
database. Also keeps the wal-index in heap rather than in
shared ...
|
SQLite Backup API
(backup.html)
3.1. File and Database Connection Locking
During the 250 ms sleep in step 3 above, no read-lock is held on the database
file and the mutex associated with pDb is not held. This allows other threads
to use database connection pDb and other connections to ...
|
C API: Maximum xShmLock index
(c3ref/c_shm_nlock.html)
SQLITE_SHM_NLOCK
... The SQLite core will never attempt to acquire or release a
lock outside of this range
See also lists of
Objects,
Constants, and
Functions.
|
C API: Set A Busy Timeout
(c3ref/busy_timeout.html)
sqlite3_busy_timeout()
This routine sets a busy handler that sleeps
for a specified amount of time when a table is locked. The handler
will sleep multiple times until at least "ms" milliseconds of sleeping
have accumulated. After at least "ms" milliseconds of ...
|
Page generated by FTS5 in about 76.59 ms.