SQLITE3_WAL_AUTOCHECKPOINT(3)

NAME
sqlite3_wal_autocheckpoint - Configure an auto-checkpoint

SYNOPSIS
int
sqlite3_wal_autocheckpoint(sqlite3 *db, int N);

DESCRIPTION
The sqlite3_wal_autocheckpoint(D,N) is a wrapper around sqlite3_wal_hook() that causes any database on database connection D to automatically checkpoint after committing a transaction if there are N or more frames in the write-ahead log file. Passing zero or a negative value as the nFrame parameter disables automatic checkpoints entirely.

The callback registered by this function replaces any existing callback registered using sqlite3_wal_hook(). Likewise, registering a callback using sqlite3_wal_hook() disables the automatic checkpoint mechanism configured by this function.

The wal_autocheckpoint pragma can be used to invoke this interface from SQL.

Checkpoints initiated by this mechanism are PASSIVE.

Every new database connection defaults to having the auto-checkpoint enabled with a threshold of 1000 or SQLITE_DEFAULT_WAL_AUTOCHECKPOINT pages. The use of this interface is only necessary if the default setting is found to be suboptimal for a particular application.

SEE ALSO
sqlite3(3), sqlite3_wal_checkpoint_v2(3), sqlite3_wal_hook(3)