Lines Matching full:cache
1656 ** that SQLite can use for the database page cache with the default page
1657 ** cache implementation.
1659 ** cache implementation is loaded using the [SQLITE_CONFIG_PCACHE2].
1661 ** 8-byte aligned memory (pMem), the size of each page cache line (sz),
1662 ** and the number of cache lines (N).
1673 ** to satisfy page cache needs, falling back to [sqlite3_malloc()] if
1674 ** a page cache line is larger than sz bytes or if all of the pMem buffer
1677 ** does an initial bulk allocation for page cache memory
1678 ** from [sqlite3_malloc()] sufficient for N cache lines if N is positive or
1680 ** page cache memory is needed beyond what is provided by the initial
1682 ** additional cache line. </dd>
1743 ** the interface to a custom page cache implementation.)^
1749 ** the current page cache implementation into that object.)^ </dd>
3075 ** eligible to use [shared cache mode], regardless of whether or not shared
3076 ** cache is enabled using [sqlite3_enable_shared_cache()]. ^The
3078 ** participate in [shared cache mode] even if it is enabled.
3154 ** <li> <b>cache</b>: ^The cache parameter may be set to either "shared" or
3157 ** sqlite3_open_v2(). ^Setting the cache parameter to "private" is
3159 ** ^If sqlite3_open_v2() is used and the "cache" parameter is present in
3209 ** <tr><td> file:data.db?mode=ro&cache=private <td>
3211 ** Regardless of whether or not shared-cache mode is enabled by
3212 ** default, use a private cache.
5649 ** CAPI3REF: Enable Or Disable Shared Pager Cache
5651 ** ^(This routine enables or disables the sharing of the database cache
5656 ** ^Cache sharing is enabled and disabled for an entire process.
5661 ** ^(The cache sharing mode set by this interface effects all subsequent
5666 ** ^(This routine returns [SQLITE_OK] if shared cache was enabled or disabled
5669 ** ^Shared cache is disabled by default. But this might change in
5671 ** cache setting should set it explicitly.
5675 ** shared cache mode should be enabled per-database connection via
5681 ** See Also: [SQLite Shared-Cache Mode]
5690 ** held by the database library. Memory used to cache database
5721 ** limit by reducing the number of pages held in the page cache
5745 ** <li> An alternative page cache implementation is specified using
5747 ** <li> The page cache allocates from its own memory pool supplied
5758 ** when memory is allocated by the page cache. Testing suggests that because
5759 ** the page cache is the predominate memory user in SQLite, most
7026 ** controlled by [SQLITE_CONFIG_SCRATCH] and auxiliary page-cache
7050 ** <dd>This parameter returns the number of bytes of page cache
7056 ** no space was left in the page cache.</dd>)^
7179 ** pager cache is shared between two or more connections the bytes of heap
7180 ** memory used by that pager cache is divided evenly between the attached
7194 ** [shared cache mode] being enabled.
7205 ** <dd>This parameter returns the number of pager cache hits that have
7211 ** <dd>This parameter returns the number of pager cache misses that have
7217 ** <dd>This parameter returns the number of dirty cache entries that have
7339 ** CAPI3REF: Custom Page Cache Object
7352 ** CAPI3REF: Custom Page Cache Object
7355 ** page cache. The page cache will allocate instances of this
7356 ** object. Various methods of the page cache use pointers to instances
7368 ** CAPI3REF: Application Defined Page Cache.
7369 ** KEYWORDS: {page cache}
7372 ** register an alternative page cache implementation by passing in an
7375 ** SQLite is used for the page cache.
7377 ** custom page cache using this API, an application can better control
7383 ** The alternative page cache mechanism is an
7385 ** The built-in page cache is recommended for most uses.
7392 ** [[the xInit() page cache method]]
7398 ** required by the custom page cache implementation.
7400 ** built-in default page cache is used instead of the application defined
7401 ** page cache.)^
7403 ** [[the xShutdown() page cache method]]
7418 ** [[the xCreate() page cache methods]]
7419 ** ^SQLite invokes the xCreate() method to construct a new cache instance.
7420 ** SQLite will typically create one cache instance for each open database file,
7423 ** be allocated by the cache. ^szPage will always a power of two. ^The
7425 ** associated with each page cache entry. ^The szExtra parameter will
7430 ** ^The third argument to xCreate(), bPurgeable, is true if the cache being
7431 ** created will be used to cache database pages of a file stored on disk, or
7432 ** false if it is used for an in-memory database. The cache implementation
7434 ** it is purely advisory. ^On a cache where bPurgeable is false, SQLite will
7436 ** ^In other words, calls to xUnpin() on a cache with bPurgeable set to
7438 ** ^Hence, a cache created with bPurgeable false will
7441 ** [[the xCachesize() page cache method]]
7443 ** suggested maximum cache-size (number of pages stored by) the cache
7449 ** [[the xPagecount() page cache methods]]
7451 ** stored in the cache, both pinned and unpinned.
7453 ** [[the xFetch() page cache methods]]
7454 ** The xFetch() method locates a page in the cache and returns a pointer to
7460 ** for each entry in the page cache.
7466 ** If the requested page is already in the page cache, then the page cache
7468 ** intact. If the requested page is not already in the cache, then the
7469 ** cache implementation should use the value of the createFlag
7473 ** <tr><th> createFlag <th> Behavior when page is not already in cache
7484 ** attempt to unpin one or more cache pages by spilling the content of
7485 ** pinned pages to disk and synching the operating system disk cache.
7487 ** [[the xUnpin() page cache method]]
7490 ** then the page must be evicted from the cache.
7493 ** page cache implementation. ^The page cache implementation
7496 ** The cache must not perform any reference counting. A single
7500 ** [[the xRekey() page cache methods]]
7502 ** page passed as the second argument. If the cache
7504 ** discarded. ^Any prior cache entry associated with newKey is guaranteed not
7507 ** When SQLite calls the xTruncate() method, the cache must discard all
7508 ** existing cache entries with page numbers (keys) greater than or equal
7513 ** [[the xDestroy() page cache method]]
7514 ** ^The xDestroy() method is used to delete a cache allocated by xCreate().
7515 ** All resources associated with the specified cache should be freed. ^After
7520 ** [[the xShrink() page cache method]]
7521 ** ^SQLite invokes the xShrink() method when it wants the page cache to
7522 ** free up as much of heap memory as possible. The page cache implementation
7749 ** If running in [shared cache mode], the application must
7750 ** guarantee that the shared cache used by the destination database
7778 ** ^When running in shared-cache mode, a database operation may fail with
7779 ** an [SQLITE_LOCKED] error if the required locks on the shared-cache or
7780 ** individual tables within the shared-cache cannot be obtained. See
7781 ** [SQLite Shared-Cache Mode] for a description of shared-cache locking.
7789 ** ^Shared-cache locks are released when a database connection concludes
7793 ** shared-cache lock and SQLITE_LOCKED is returned to the caller, the
7810 ** shared-cache table, and more than one other connection currently holds
8372 ** pages in the pager-cache that are not currently in use are written out