]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Application-defined page cache documentation updates. (CVS 5916)
authordrh <drh@noemail.net>
Tue, 18 Nov 2008 19:18:08 +0000 (19:18 +0000)
committerdrh <drh@noemail.net>
Tue, 18 Nov 2008 19:18:08 +0000 (19:18 +0000)
FossilOrigin-Name: db0f1203591fcc4c554c47cdf28abe279cf7f1d5

manifest
manifest.uuid
src/sqlite.h.in

index f9b01a5efd42253ca570443275b9a434b9673d1f..d7506f4249fcac751685a5507dbb2ea9abc7086f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Reduce\sthe\snumber\sof\s"missing\sinitializer"\swarnings.\s(CVS\s5915)
-D 2008-11-18T07:27:24
+C Application-defined\spage\scache\sdocumentation\supdates.\s(CVS\s5916)
+D 2008-11-18T19:18:09
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 6cbc7db84c23804c368bc7ffe51367412212d7b2
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -152,7 +152,7 @@ F src/random.c a87afbd598aa877e23ac676ee92fd8ee5c786a51
 F src/resolve.c 4af5391d2b4c1d6c583a6805ac6660181de4545b
 F src/select.c 18c6d96f4f8c6e43cb35201a1245ff02be8c9378
 F src/shell.c 650d1a87408682280d0e9d014d0d328c59c84b38
-F src/sqlite.h.in 85e159e1d634c84ddbf87481293d5b1d26e2d27b
+F src/sqlite.h.in 4d05b9195e9489dc62857d9dd3334b0139715101
 F src/sqlite3ext.h 1db7d63ab5de4b3e6b83dd03d1a4e64fef6d2a17
 F src/sqliteInt.h d48bb0ecc2d1c25d47ea144560d7a8e6864fbabe
 F src/sqliteLimit.h f435e728c6b620ef7312814d660a81f9356eb5c8
@@ -658,7 +658,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 8009220c36635dd9b6efea7dc13281ca9625c40a
-R 4f74c331c9f7344cfe41ff3e999a5aa5
-U danielk1977
-Z 5297fca5f2e96adf66d4f86dda3033ce
+P d68e2795e72f1bfc0bf3b8e75cdec2e0b3d5bfcb
+R e674c380ec3d98c94fd560231dd11c92
+U drh
+Z 7fccbfebb63a85d4f415b73c1ae13548
index d508e78dec5ae2e9ff5cb05be3d3c93050184aa4..2bc6f59e649a7b0a9aff7eda4bf4109803c6845c 100644 (file)
@@ -1 +1 @@
-d68e2795e72f1bfc0bf3b8e75cdec2e0b3d5bfcb
\ No newline at end of file
+db0f1203591fcc4c554c47cdf28abe279cf7f1d5
\ No newline at end of file
index 1e0dd741999588d714e7df6166812be563df51ba..39070f7374bee6d92bcd24e0f5d3fc18ce99c333 100644 (file)
@@ -30,7 +30,7 @@
 ** the version number) and changes its name to "sqlite3.h" as
 ** part of the build process.
 **
-** @(#) $Id: sqlite.h.in,v 1.413 2008/11/13 14:28:29 danielk1977 Exp $
+** @(#) $Id: sqlite.h.in,v 1.414 2008/11/18 19:18:09 drh Exp $
 */
 #ifndef _SQLITE3_H_
 #define _SQLITE3_H_
@@ -1274,7 +1274,10 @@ struct sqlite3_mem_methods {
 **
 ** <dt>SQLITE_CONFIG_PAGECACHE</dt>
 ** <dd>This option specifies a static memory buffer that SQLite can use for
-** the database page cache.  There are three arguments: A pointer to the
+** the database page cache with the default page cache implemenation.  
+** This configuration should not be used if an application-define page
+** cache implementation is loaded using the SQLITE_CONFIG_PCACHE option.
+** There are three arguments to this option: A pointer to the
 ** memory, the size of each page buffer (sz), and the number of pages (N).
 ** The sz argument must be a power of two between 512 and 32768.  The first
 ** argument should point to an allocation of at least sz*N bytes of memory.
@@ -1319,6 +1322,17 @@ struct sqlite3_mem_methods {
 ** size of each lookaside buffer slot and the second is the number of
 ** slots allocated to each database connection.</dd>
 **
+** <dt>SQLITE_CONFIG_PCACHE</dt>
+** <dd>This option takes a single argument which is a pointer to
+** an [sqlite3_pcache_methods] object.  This object specifies the interface
+** to a custom page cache implementation.  SQLite makes a copy of the
+** object and uses it for page cache memory allocations.</dd>
+**
+** <dt>SQLITE_CONFIG_GETPCACHE</dt>
+** <dd>This option takes a single argument which is a pointer to an
+** [sqlite3_pcache_methods] object.  SQLite copies of the current
+** page cache implementation into that object.</dd>
+**
 ** </dl>
 */
 #define SQLITE_CONFIG_SINGLETHREAD  1  /* nil */
@@ -6558,19 +6572,24 @@ SQLITE_EXPERIMENTAL int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg);
 #define SQLITE_STMTSTATUS_SORT              2
 
 /*
+** CAPI3REF: Custom Page Cache Object
+** EXPERIMENTAL
+**
 ** The sqlite3_pcache type is opaque.  It is implemented by
 ** the pluggable module.  The SQLite core has no knowledge of
 ** its size or internal structure and never deals with the
 ** sqlite3_pcache object except by holding and passing pointers
 ** to the object.
+**
+** See [sqlite3_pcache_methods] for additional information.
 */
 typedef struct sqlite3_pcache sqlite3_pcache;
 
 /*
-** CAPI3REF: Custom Page Cache API.
+** CAPI3REF: Application Defined Page Cache.
 ** EXPERIMENTAL
 **
-** The sqlite3_config(SQLITE_CONFIG_SET_PCACHE, ...) interface can
+** The [sqlite3_config]([SQLITE_CONFIG_PCACHE], ...) interface can
 ** register an alternative page cache implementation by passing in an 
 ** instance of the sqlite3_pcache_methods structure. The majority of the 
 ** heap memory used by sqlite is used by the page cache to cache data read 
@@ -6584,12 +6603,12 @@ typedef struct sqlite3_pcache sqlite3_pcache;
 ** The contents of the structure are copied to an internal buffer by sqlite
 ** within the call to [sqlite3_config].
 **
-** The xInit() method is called once for each call to sqlite3_initialize()
+** The xInit() method is called once for each call to [sqlite3_initialize()]
 ** (usually only once during the lifetime of the process). It is passed
 ** a copy of the sqlite3_pcache_methods.pArg value. It can be used to set
 ** up global structures and mutexes required by the custom page cache 
 ** implementation. The xShutdown() method is called from within 
-** sqlite3_shutdown(), if the application invokes this API. It can be used
+** [sqlite3_shutdown()], if the application invokes this API. It can be used
 ** to clean up any outstanding resources before process shutdown, if required.
 **
 ** The xCreate() method is used to construct a new cache instance. The
@@ -6604,7 +6623,7 @@ typedef struct sqlite3_pcache sqlite3_pcache;
 ** The xCachesize() method may be called at any time by SQLite to set the
 ** suggested maximum cache-size (number of pages stored by) the cache
 ** instance passed as the first argument. This is the value configured using
-** the SQLite "PRAGMA cache_size" command. As with the bPurgeable parameter,
+** the SQLite "[PRAGMA cache_size]" command. As with the bPurgeable parameter,
 ** the implementation is not required to do anything special with this
 ** value, it is advisory only.
 **
@@ -6675,7 +6694,7 @@ typedef struct sqlite3_pcache sqlite3_pcache;
 **
 ** The xDestroy() method is used to delete a cache allocated by xCreate().
 ** All resources associated with the specified cache should be freed. After
-** calling the xDestroy() method, SQLite considers the sqlite3_pcache*
+** calling the xDestroy() method, SQLite considers the [sqlite3_pcache*]
 ** handle invalid, and will not use it with any other sqlite3_pcache_methods
 ** functions.
 */