Application-defined page cache documentation updates. (CVS 5916)
FossilOrigin-Name: db0f1203591fcc4c554c47cdf28abe279cf7f1d5
This commit is contained in:
parent
cdcfe95cec
commit
2161474f62
14
manifest
14
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
|
||||
|
@ -1 +1 @@
|
||||
d68e2795e72f1bfc0bf3b8e75cdec2e0b3d5bfcb
|
||||
db0f1203591fcc4c554c47cdf28abe279cf7f1d5
|
@ -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.
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user