diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2015-02-17 17:25:57 +0000 |
|---|---|---|
| committer | <> | 2015-03-17 16:26:24 +0000 |
| commit | 780b92ada9afcf1d58085a83a0b9e6bc982203d1 (patch) | |
| tree | 598f8b9fa431b228d29897e798de4ac0c1d3d970 /lang/sql/adapter/pager.h | |
| parent | 7a2660ba9cc2dc03a69ddfcfd95369395cc87444 (diff) | |
| download | berkeleydb-master.tar.gz | |
Diffstat (limited to 'lang/sql/adapter/pager.h')
| -rw-r--r-- | lang/sql/adapter/pager.h | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/lang/sql/adapter/pager.h b/lang/sql/adapter/pager.h index fe5c0568..b0504a8f 100644 --- a/lang/sql/adapter/pager.h +++ b/lang/sql/adapter/pager.h @@ -1,7 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2012, 2012 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2015 Oracle and/or its affiliates. All rights reserved. */ #include <db.h> @@ -38,7 +38,24 @@ typedef db_pgno_t Pgno; #define PAGER_JOURNALMODE_TRUNCATE 3 /* Commit by truncating journal */ #define PAGER_JOURNALMODE_MEMORY 4 /* In-memory journal file */ #define PAGER_JOURNALMODE_WAL 5 /* Use write-ahead logging */ - + /* + ** Flags that make up the mask passed to sqlite3PagerAcquire(). + */ + #define PAGER_GET_NOCONTENT 0x01 /* Do not load data from disk */ + #define PAGER_GET_READONLY 0x02 /* Read-only page is acceptable */ + +/* +** Flags for sqlite3PagerSetFlags() +*/ +#define PAGER_SYNCHRONOUS_OFF 0x01 /* PRAGMA synchronous=OFF */ +#define PAGER_SYNCHRONOUS_NORMAL 0x02 /* PRAGMA synchronous=NORMAL */ +#define PAGER_SYNCHRONOUS_FULL 0x03 /* PRAGMA synchronous=FULL */ +#define PAGER_SYNCHRONOUS_MASK 0x03 /* Mask for three values above */ +#define PAGER_FULLFSYNC 0x04 /* PRAGMA fullfsync=ON */ +#define PAGER_CKPT_FULLFSYNC 0x08 /* PRAGMA checkpoint_fullfsync=ON */ +#define PAGER_CACHESPILL 0x10 /* PRAGMA cache_spill=ON */ +#define PAGER_FLAGS_MASK 0x1c /* All above except SYNCHRONOUS */ + /* ** Default maximum size for log files. This value may be overridden using the ** sqlite3PagerJournalSizeLimit() API. See also "PRAGMA journal_size_limit". @@ -47,18 +64,22 @@ typedef db_pgno_t Pgno; #define SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT 2 * 1024 * 1024 #endif +const char *sqlite3PagerFilename(Pager *pPager, int); +void sqlite3PagerCacheStat(Pager *, int, int, int *); int sqlite3PagerExclusiveLock(Pager *pPager); sqlite3_file *sqlite3PagerFile(Pager*); -const char *sqlite3PagerFilename(Pager *pPager); int sqlite3PagerGetJournalMode(Pager *pPager); int sqlite3PagerIsMemdb(Pager*); +u8 sqlite3PagerIsreadonly(Pager*); int sqlite3PagerJournalMode(Pager *, int); i64 sqlite3PagerJournalSizeLimit(Pager *, i64); int sqlite3PagerLockingMode(Pager *, int); int sqlite3PagerMemUsed(Pager *pPager); int sqlite3PagerOkToChangeJournalMode(Pager *pPager); int sqlite3PagerPagecount(Pager*, int*); +void sqlite3PagerSetFlags(Pager*,unsigned); int sqlite3PagerSetJournalMode(Pager *pPager, int eMode); +void sqlite3PagerShrink(Pager*); #ifndef SQLITE_OMIT_WAL int sqlite3PagerWalCallback(Pager *pPager); |
