From: stephan Date: Fri, 5 Sep 2025 13:26:24 +0000 (+0000) Subject: WAL API doc tweaks based on suggestions from [forum:16e94b4bdcfbdc57|forum post 16e94... X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=afd432f86e3a4bda1205a63523b5813ae5b4a1cd;p=thirdparty%2Fsqlite.git WAL API doc tweaks based on suggestions from [forum:16e94b4bdcfbdc57|forum post 16e94b4bdcf]. FossilOrigin-Name: 1bb7eaf784687cd877c5c0552bb511659767670259e64bc108e7972e356d3cfc --- diff --git a/manifest b/manifest index 4f4ad39f11..1fb3ae6435 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Build\sportability\sfixes\sfor\sHP-UX,\sreported\sin\s[forum:d80ecdaddd885149\s|\sforum\spost\sd80ecdaddd8].\sThe\sfull\sfix\salso\srequires\sa\spatch\sto\sautosetup/cc-shared.tcl,\sbut\sthat's\spending\sbecause\sit's\supstream\scode. -D 2025-09-05T12:14:22.499 +C WAL\sAPI\sdoc\stweaks\sbased\son\ssuggestions\sfrom\s[forum:16e94b4bdcfbdc57|forum\spost\s16e94b4bdcf]. +D 2025-09-05T13:26:24.094 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -743,7 +743,7 @@ F src/resolve.c f8d1d011aba0964ff1bdccd049d4d2c2fec217efd90d202a4bb775e926b2c25d F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 F src/select.c b95181711d59c36d9789e67f76c4cfec64b99f9629a50be5e6566e117b87d957 F src/shell.c.in 51c8452b3e6b9a0dfa3df853dd16f147e5e4ae2002deb775cf8a2fccf01c3c6c -F src/sqlite.h.in 7ceea612f0b54f53676e082890a175c6ff247191671d90d20843fde3d6f7b663 +F src/sqlite.h.in 812ba2b78404e491c5621bbcd1c608b62679c826a7bd8b010b57e7cd4b80a8c1 F src/sqlite3.rc 015537e6ac1eec6c7050e17b616c2ffe6f70fca241835a84a4f0d5937383c479 F src/sqlite3ext.h 0bfd049bb2088cc44c2ad54f2079d1c6e43091a4e1ce8868779b75f6c1484f1e F src/sqliteInt.h 27c73e48878d31ef230ba867d1f8c3af6aed357fd93ccc605d3f1aae007ea62b @@ -2173,8 +2173,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7 F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P beb092d8105e5a1ce95339527bf96799e2ce073591b055f71a5f1dc1d0a0c49c -R f303889c257e7fa0fec97b62b6958c2c +P 5f38c8aa8fe9993cafde69a85e96e32c283a6bc142238a9d10f3637c93cd474b +R 5d99d60f3e53d42ca70bc1c985846a54 U stephan -Z e83b488810313398f18cc656e4a5ff98 +Z 2e8d2150f6aa36e3c0200df3af3cad3e # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 9a7b4acd2e..91930b5bd5 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -5f38c8aa8fe9993cafde69a85e96e32c283a6bc142238a9d10f3637c93cd474b +1bb7eaf784687cd877c5c0552bb511659767670259e64bc108e7972e356d3cfc diff --git a/src/sqlite.h.in b/src/sqlite.h.in index 4dace4a813..adc1cef9dc 100644 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@ -9785,7 +9785,7 @@ void sqlite3_log(int iErrCode, const char *zFormat, ...); ** is the number of pages currently in the write-ahead log file, ** including those that were just committed. ** -** The callback function should normally return [SQLITE_OK]. ^If an error +** ^The callback function should normally return [SQLITE_OK]. ^If an error ** code is returned, that error will propagate back up through the ** SQLite code base to cause the statement that provoked the callback ** to report an error, though the commit will have still occurred. If the @@ -9793,13 +9793,26 @@ void sqlite3_log(int iErrCode, const char *zFormat, ...); ** that does not correspond to any valid SQLite error code, the results ** are undefined. ** -** A single database handle may have at most a single write-ahead log callback -** registered at one time. ^Calling [sqlite3_wal_hook()] replaces any -** previously registered write-ahead log callback. ^The return value is -** a copy of the third parameter from the previous call, if any, or 0. -** ^Note that the [sqlite3_wal_autocheckpoint()] interface and the -** [wal_autocheckpoint pragma] both invoke [sqlite3_wal_hook()] and will -** overwrite any prior [sqlite3_wal_hook()] settings. +** ^A single database handle may have at most a single write-ahead log +** callback registered at one time. ^Calling [sqlite3_wal_hook()] +** replaces the default behavior or previously registered write-ahead +** log callback. +** +** ^The return value is a copy of the third parameter from the +** previous call, if any, or 0. +** +** ^The [sqlite3_wal_autocheckpoint()] interface and the +** [wal_autocheckpoint pragma] both invoke [sqlite3_wal_hook()] and +** will overwrite any prior [sqlite3_wal_hook()] settings. +** +** ^If a write-ahead log callback is set using this function then +** [sqlite3_wal_checkpoint_v2()] or [PRAGMA wal_checkpoint] +** should be invoked periodically to keep the write-ahead log file +** from growing without bound. +** +** ^Passing a NULL pointer for the callback disables automatic +** checkpointing entirely. To re-enable the default behavior, call +** sqlite3_wal_autocheckpoint(db,1000) or use [PRAGMA wal_checkpoint]. */ void *sqlite3_wal_hook( sqlite3*, @@ -9816,7 +9829,7 @@ void *sqlite3_wal_hook( ** 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 +** a negative value as the N parameter disables automatic ** checkpoints entirely. ** ** ^The callback registered by this function replaces any existing callback @@ -9832,9 +9845,10 @@ void *sqlite3_wal_hook( ** ** ^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. +** pages. +** +** ^The use of this interface is only necessary if the default setting +** is found to be suboptimal for a particular application. */ int sqlite3_wal_autocheckpoint(sqlite3 *db, int N);