The functions, handles and methods applications use to access and manage data with WiredTiger. More...
Classes | |
struct | WT_ITEM |
A raw item of data to be managed. More... | |
struct | WT_CURSOR |
A WT_CURSOR handle is the interface to a cursor. More... | |
struct | WT_SESSION |
All data operations are performed in the context of a WT_SESSION. More... | |
struct | WT_CONNECTION |
A connection to a WiredTiger database. More... | |
struct | WT_EVENT_HANDLER |
The interface implemented by applications to handle error, informational and progress messages. More... | |
Macros | |
#define | WT_INTPACK64_MAXSIZE |
The maximum packed size of a 64-bit integer. More... | |
#define | WT_INTPACK32_MAXSIZE |
The maximum packed size of a 32-bit integer. More... | |
Functions | |
int | wiredtiger_open (const char *home, WT_EVENT_HANDLER *errhandler, const char *config, WT_CONNECTION **connectionp) |
Open a connection to a database. More... | |
const char * | wiredtiger_strerror (int err) |
Return information about an error as a string; wiredtiger_strerror is a superset of the ISO C99/POSIX 1003.1-2001 function strerror. More... | |
const char * | wiredtiger_version (int *majorp, int *minorp, int *patchp) |
Get version information. More... | |
Data packing and unpacking | |
typedef struct __wt_pack_stream | WT_PACK_STREAM |
Streaming interface to packing. More... | |
int | wiredtiger_struct_pack (WT_SESSION *session, void *buffer, size_t size, const char *format,...) |
Pack a structure into a buffer. More... | |
int | wiredtiger_struct_size (WT_SESSION *session, size_t *sizep, const char *format,...) |
Calculate the size required to pack a structure. More... | |
int | wiredtiger_struct_unpack (WT_SESSION *session, const void *buffer, size_t size, const char *format,...) |
Unpack a structure from a buffer. More... | |
int | wiredtiger_pack_start (WT_SESSION *session, const char *format, void *buffer, size_t size, WT_PACK_STREAM **psp) |
Start a packing operation into a buffer with the given format string. More... | |
int | wiredtiger_unpack_start (WT_SESSION *session, const char *format, const void *buffer, size_t size, WT_PACK_STREAM **psp) |
Start an unpacking operation from a buffer with the given format string. More... | |
int | wiredtiger_pack_close (WT_PACK_STREAM *ps, size_t *usedp) |
Close a packing stream. More... | |
int | wiredtiger_pack_item (WT_PACK_STREAM *ps, WT_ITEM *item) |
Pack an item into a packing stream. More... | |
int | wiredtiger_pack_int (WT_PACK_STREAM *ps, int64_t i) |
Pack a signed integer into a packing stream. More... | |
int | wiredtiger_pack_str (WT_PACK_STREAM *ps, const char *s) |
Pack a string into a packing stream. More... | |
int | wiredtiger_pack_uint (WT_PACK_STREAM *ps, uint64_t u) |
Pack an unsigned integer into a packing stream. More... | |
int | wiredtiger_unpack_item (WT_PACK_STREAM *ps, WT_ITEM *item) |
Unpack an item from a packing stream. More... | |
int | wiredtiger_unpack_int (WT_PACK_STREAM *ps, int64_t *ip) |
Unpack a signed integer from a packing stream. More... | |
int | wiredtiger_unpack_str (WT_PACK_STREAM *ps, const char **sp) |
Unpack a string from a packing stream. More... | |
int | wiredtiger_unpack_uint (WT_PACK_STREAM *ps, uint64_t *up) |
Unpack an unsigned integer from a packing stream. More... | |
Error returns | |
Most functions and methods in WiredTiger return an integer code indicating whether the operation succeeded or failed. A return of zero indicates success, all non-zero return values indicate some kind of failure. WiredTiger reserves all values from -31,800 to -31,999 as possible error return values. WiredTiger may also return C99/POSIX error codes such as The following are all of the WiredTiger-specific error returns: | |
#define | WT_DEADLOCK |
Conflict between concurrent operations. More... | |
#define | WT_DUPLICATE_KEY |
Attempt to insert an existing key. More... | |
#define | WT_ERROR |
Non-specific WiredTiger error. More... | |
#define | WT_NOTFOUND |
Item not found. More... | |
#define | WT_PANIC |
WiredTiger library panic. More... | |
Connection statistics | |
Statistics are accessed through cursors with | |
#define | WT_STAT_CONN_BLOCK_BYTE_MAP_READ |
block manager: mapped bytes read | |
#define | WT_STAT_CONN_BLOCK_BYTE_READ |
block manager: bytes read | |
#define | WT_STAT_CONN_BLOCK_BYTE_WRITE |
block manager: bytes written | |
#define | WT_STAT_CONN_BLOCK_MAP_READ |
block manager: mapped blocks read | |
#define | WT_STAT_CONN_BLOCK_PRELOAD |
block manager: blocks pre-loaded | |
#define | WT_STAT_CONN_BLOCK_READ |
block manager: blocks read | |
#define | WT_STAT_CONN_BLOCK_WRITE |
block manager: blocks written | |
#define | WT_STAT_CONN_CACHE_BYTES_DIRTY |
cache: tracked dirty bytes in the cache | |
#define | WT_STAT_CONN_CACHE_BYTES_INUSE |
cache: bytes currently in the cache | |
#define | WT_STAT_CONN_CACHE_BYTES_MAX |
cache: maximum bytes configured | |
#define | WT_STAT_CONN_CACHE_BYTES_READ |
cache: bytes read into cache | |
#define | WT_STAT_CONN_CACHE_BYTES_WRITE |
cache: bytes written from cache | |
#define | WT_STAT_CONN_CACHE_EVICTION_CHECKPOINT |
cache: checkpoint blocked page eviction | |
#define | WT_STAT_CONN_CACHE_EVICTION_CLEAN |
cache: unmodified pages evicted | |
#define | WT_STAT_CONN_CACHE_EVICTION_DIRTY |
cache: modified pages evicted | |
#define | WT_STAT_CONN_CACHE_EVICTION_FAIL |
cache: pages selected for eviction unable to be evicted | |
#define | WT_STAT_CONN_CACHE_EVICTION_FORCE |
cache: pages evicted because they exceeded the in-memory maximum | |
#define | WT_STAT_CONN_CACHE_EVICTION_FORCE_FAIL |
cache: failed eviction of pages that exceeded the in-memory maximum | |
#define | WT_STAT_CONN_CACHE_EVICTION_HAZARD |
cache: hazard pointer blocked page eviction | |
#define | WT_STAT_CONN_CACHE_EVICTION_INTERNAL |
cache: internal pages evicted | |
#define | WT_STAT_CONN_CACHE_EVICTION_MERGE |
cache: internal page merge operations completed | |
#define | WT_STAT_CONN_CACHE_EVICTION_MERGE_FAIL |
cache: internal page merge attempts that could not complete | |
#define | WT_STAT_CONN_CACHE_EVICTION_MERGE_LEVELS |
cache: internal levels merged | |
#define | WT_STAT_CONN_CACHE_EVICTION_SLOW |
cache: eviction server unable to reach eviction goal | |
#define | WT_STAT_CONN_CACHE_EVICTION_WALK |
cache: pages walked for eviction | |
#define | WT_STAT_CONN_CACHE_INMEM_SPLIT |
pages split because they were unable to be evicted | |
#define | WT_STAT_CONN_CACHE_PAGES_DIRTY |
cache: tracked dirty pages in the cache | |
#define | WT_STAT_CONN_CACHE_PAGES_INUSE |
cache: pages currently held in the cache | |
#define | WT_STAT_CONN_CACHE_READ |
cache: pages read into cache | |
#define | WT_STAT_CONN_CACHE_WRITE |
cache: pages written from cache | |
#define | WT_STAT_CONN_COND_WAIT |
pthread mutex condition wait calls | |
#define | WT_STAT_CONN_CURSOR_CREATE |
cursor creation | |
#define | WT_STAT_CONN_CURSOR_INSERT |
Btree cursor insert calls. | |
#define | WT_STAT_CONN_CURSOR_NEXT |
Btree cursor next calls. | |
#define | WT_STAT_CONN_CURSOR_PREV |
Btree cursor prev calls. | |
#define | WT_STAT_CONN_CURSOR_REMOVE |
Btree cursor remove calls. | |
#define | WT_STAT_CONN_CURSOR_RESET |
Btree cursor reset calls. | |
#define | WT_STAT_CONN_CURSOR_SEARCH |
Btree cursor search calls. | |
#define | WT_STAT_CONN_CURSOR_SEARCH_NEAR |
Btree cursor search near calls. | |
#define | WT_STAT_CONN_CURSOR_UPDATE |
Btree cursor update calls. | |
#define | WT_STAT_CONN_DH_CONN_HANDLES |
dhandle: connection dhandles swept | |
#define | WT_STAT_CONN_DH_CONN_SWEEPS |
dhandle: connection sweep attempts | |
#define | WT_STAT_CONN_DH_SESSION_HANDLES |
dhandle: session dhandles swept | |
#define | WT_STAT_CONN_DH_SESSION_SWEEPS |
dhandle: session sweep attempts | |
#define | WT_STAT_CONN_DH_SWEEP_EVICT |
dhandle: sweeps conflicting with evict | |
#define | WT_STAT_CONN_FILE_OPEN |
files currently open | |
#define | WT_STAT_CONN_LOG_BUFFER_GROW |
log: log buffer size increases | |
#define | WT_STAT_CONN_LOG_BUFFER_SIZE |
log: total log buffer size | |
#define | WT_STAT_CONN_LOG_BYTES_USER |
log: user provided log bytes written | |
#define | WT_STAT_CONN_LOG_BYTES_WRITTEN |
log: log bytes written | |
#define | WT_STAT_CONN_LOG_MAX_FILESIZE |
log: maximum log file size | |
#define | WT_STAT_CONN_LOG_READS |
log: log read operations | |
#define | WT_STAT_CONN_LOG_SCAN_RECORDS |
log: records processed by log scan | |
#define | WT_STAT_CONN_LOG_SCAN_REREADS |
log: log scan records requiring two reads | |
#define | WT_STAT_CONN_LOG_SCANS |
log: log scan operations | |
#define | WT_STAT_CONN_LOG_SLOT_CLOSES |
log: consolidated slot closures | |
#define | WT_STAT_CONN_LOG_SLOT_CONSOLIDATED |
log: logging bytes consolidated | |
#define | WT_STAT_CONN_LOG_SLOT_JOINS |
log: consolidated slot joins | |
#define | WT_STAT_CONN_LOG_SLOT_RACES |
log: consolidated slot join races | |
#define | WT_STAT_CONN_LOG_SLOT_READY_WAIT_TIMEOUT |
log: log slot ready wait timeouts | |
#define | WT_STAT_CONN_LOG_SLOT_RELEASE_WAIT_TIMEOUT |
log: log slot release wait timeouts | |
#define | WT_STAT_CONN_LOG_SLOT_SWITCH_FAILS |
log: slots selected for switching that were unavailable | |
#define | WT_STAT_CONN_LOG_SLOT_TOOBIG |
log: record size exceeded maximum | |
#define | WT_STAT_CONN_LOG_SLOT_TOOSMALL |
log: failed to find a slot large enough for record | |
#define | WT_STAT_CONN_LOG_SLOT_TRANSITIONS |
log: consolidated slot join transitions | |
#define | WT_STAT_CONN_LOG_SYNC |
log: log sync operations | |
#define | WT_STAT_CONN_LOG_WRITES |
log: log write operations | |
#define | WT_STAT_CONN_LSM_ROWS_MERGED |
rows merged in an LSM tree | |
#define | WT_STAT_CONN_MEMORY_ALLOCATION |
memory allocations | |
#define | WT_STAT_CONN_MEMORY_FREE |
memory frees | |
#define | WT_STAT_CONN_MEMORY_GROW |
memory re-allocations | |
#define | WT_STAT_CONN_READ_IO |
total read I/Os | |
#define | WT_STAT_CONN_REC_PAGES |
page reconciliation calls | |
#define | WT_STAT_CONN_REC_PAGES_EVICTION |
page reconciliation calls for eviction | |
#define | WT_STAT_CONN_REC_SKIPPED_UPDATE |
reconciliation failed because an update could not be included | |
#define | WT_STAT_CONN_RWLOCK_READ |
pthread mutex shared lock read-lock calls | |
#define | WT_STAT_CONN_RWLOCK_WRITE |
pthread mutex shared lock write-lock calls | |
#define | WT_STAT_CONN_SESSION_CURSOR_OPEN |
open cursor count | |
#define | WT_STAT_CONN_TXN_BEGIN |
transactions | |
#define | WT_STAT_CONN_TXN_CHECKPOINT |
transaction checkpoints | |
#define | WT_STAT_CONN_TXN_CHECKPOINT_RUNNING |
transaction checkpoint currently running | |
#define | WT_STAT_CONN_TXN_COMMIT |
transactions committed | |
#define | WT_STAT_CONN_TXN_FAIL_CACHE |
transaction failures due to cache overflow | |
#define | WT_STAT_CONN_TXN_ROLLBACK |
transactions rolled-back | |
#define | WT_STAT_CONN_WRITE_IO |
total write I/Os | |
Statistics for data sources | |
#define | WT_STAT_DSRC_ALLOCATION_SIZE |
block manager: file allocation unit size | |
#define | WT_STAT_DSRC_BLOCK_ALLOC |
block manager: blocks allocated | |
#define | WT_STAT_DSRC_BLOCK_CHECKPOINT_SIZE |
block manager: checkpoint size | |
#define | WT_STAT_DSRC_BLOCK_EXTENSION |
block manager: allocations requiring file extension | |
#define | WT_STAT_DSRC_BLOCK_FREE |
block manager: blocks freed | |
#define | WT_STAT_DSRC_BLOCK_MAGIC |
block manager: file magic number | |
#define | WT_STAT_DSRC_BLOCK_MAJOR |
block manager: file major version number | |
#define | WT_STAT_DSRC_BLOCK_MINOR |
block manager: minor version number | |
#define | WT_STAT_DSRC_BLOCK_REUSE_BYTES |
block manager: file bytes available for reuse | |
#define | WT_STAT_DSRC_BLOCK_SIZE |
block manager: file size in bytes | |
#define | WT_STAT_DSRC_BLOOM_COUNT |
bloom filters in the LSM tree | |
#define | WT_STAT_DSRC_BLOOM_FALSE_POSITIVE |
bloom filter false positives | |
#define | WT_STAT_DSRC_BLOOM_HIT |
bloom filter hits | |
#define | WT_STAT_DSRC_BLOOM_MISS |
bloom filter misses | |
#define | WT_STAT_DSRC_BLOOM_PAGE_EVICT |
bloom filter pages evicted from cache | |
#define | WT_STAT_DSRC_BLOOM_PAGE_READ |
bloom filter pages read into cache | |
#define | WT_STAT_DSRC_BLOOM_SIZE |
total size of bloom filters | |
#define | WT_STAT_DSRC_BTREE_COLUMN_DELETED |
column-store variable-size deleted values | |
#define | WT_STAT_DSRC_BTREE_COLUMN_FIX |
column-store fixed-size leaf pages | |
#define | WT_STAT_DSRC_BTREE_COLUMN_INTERNAL |
column-store internal pages | |
#define | WT_STAT_DSRC_BTREE_COLUMN_VARIABLE |
column-store variable-size leaf pages | |
#define | WT_STAT_DSRC_BTREE_COMPACT_REWRITE |
pages rewritten by compaction | |
#define | WT_STAT_DSRC_BTREE_ENTRIES |
total LSM, table or file object key/value pairs | |
#define | WT_STAT_DSRC_BTREE_FIXED_LEN |
fixed-record size | |
#define | WT_STAT_DSRC_BTREE_MAXIMUM_DEPTH |
maximum tree depth | |
#define | WT_STAT_DSRC_BTREE_MAXINTLITEM |
maximum internal page item size | |
#define | WT_STAT_DSRC_BTREE_MAXINTLPAGE |
maximum internal page size | |
#define | WT_STAT_DSRC_BTREE_MAXLEAFITEM |
maximum leaf page item size | |
#define | WT_STAT_DSRC_BTREE_MAXLEAFPAGE |
maximum leaf page size | |
#define | WT_STAT_DSRC_BTREE_OVERFLOW |
overflow pages | |
#define | WT_STAT_DSRC_BTREE_ROW_INTERNAL |
row-store internal pages | |
#define | WT_STAT_DSRC_BTREE_ROW_LEAF |
row-store leaf pages | |
#define | WT_STAT_DSRC_CACHE_BYTES_READ |
bytes read into cache | |
#define | WT_STAT_DSRC_CACHE_BYTES_WRITE |
bytes written from cache | |
#define | WT_STAT_DSRC_CACHE_EVICTION_CHECKPOINT |
cache: checkpoint blocked page eviction | |
#define | WT_STAT_DSRC_CACHE_EVICTION_CLEAN |
unmodified pages evicted | |
#define | WT_STAT_DSRC_CACHE_EVICTION_DIRTY |
modified pages evicted | |
#define | WT_STAT_DSRC_CACHE_EVICTION_FAIL |
data source pages selected for eviction unable to be evicted | |
#define | WT_STAT_DSRC_CACHE_EVICTION_HAZARD |
cache: hazard pointer blocked page eviction | |
#define | WT_STAT_DSRC_CACHE_EVICTION_INTERNAL |
internal pages evicted | |
#define | WT_STAT_DSRC_CACHE_EVICTION_MERGE |
cache: internal page merge operations completed | |
#define | WT_STAT_DSRC_CACHE_EVICTION_MERGE_FAIL |
cache: internal page merge attempts that could not complete | |
#define | WT_STAT_DSRC_CACHE_EVICTION_MERGE_LEVELS |
cache: internal levels merged | |
#define | WT_STAT_DSRC_CACHE_INMEM_SPLIT |
pages split because they were unable to be evicted | |
#define | WT_STAT_DSRC_CACHE_OVERFLOW_VALUE |
overflow values cached in memory | |
#define | WT_STAT_DSRC_CACHE_READ |
pages read into cache | |
#define | WT_STAT_DSRC_CACHE_READ_OVERFLOW |
overflow pages read into cache | |
#define | WT_STAT_DSRC_CACHE_WRITE |
pages written from cache | |
#define | WT_STAT_DSRC_COMPRESS_RAW_FAIL |
raw compression call failed, no additional data available | |
#define | WT_STAT_DSRC_COMPRESS_RAW_FAIL_TEMPORARY |
raw compression call failed, additional data available | |
#define | WT_STAT_DSRC_COMPRESS_RAW_OK |
raw compression call succeeded | |
#define | WT_STAT_DSRC_COMPRESS_READ |
compressed pages read | |
#define | WT_STAT_DSRC_COMPRESS_WRITE |
compressed pages written | |
#define | WT_STAT_DSRC_COMPRESS_WRITE_FAIL |
page written failed to compress | |
#define | WT_STAT_DSRC_COMPRESS_WRITE_TOO_SMALL |
page written was too small to compress | |
#define | WT_STAT_DSRC_CURSOR_CREATE |
cursor creation | |
#define | WT_STAT_DSRC_CURSOR_INSERT |
cursor insert calls | |
#define | WT_STAT_DSRC_CURSOR_INSERT_BULK |
bulk-loaded cursor-insert calls | |
#define | WT_STAT_DSRC_CURSOR_INSERT_BYTES |
cursor-insert key and value bytes inserted | |
#define | WT_STAT_DSRC_CURSOR_NEXT |
cursor next calls | |
#define | WT_STAT_DSRC_CURSOR_PREV |
cursor prev calls | |
#define | WT_STAT_DSRC_CURSOR_REMOVE |
cursor remove calls | |
#define | WT_STAT_DSRC_CURSOR_REMOVE_BYTES |
cursor-remove key bytes removed | |
#define | WT_STAT_DSRC_CURSOR_RESET |
cursor reset calls | |
#define | WT_STAT_DSRC_CURSOR_SEARCH |
cursor search calls | |
#define | WT_STAT_DSRC_CURSOR_SEARCH_NEAR |
cursor search near calls | |
#define | WT_STAT_DSRC_CURSOR_UPDATE |
cursor update calls | |
#define | WT_STAT_DSRC_CURSOR_UPDATE_BYTES |
cursor-update value bytes updated | |
#define | WT_STAT_DSRC_LSM_CHUNK_COUNT |
chunks in the LSM tree | |
#define | WT_STAT_DSRC_LSM_GENERATION_MAX |
highest merge generation in the LSM tree | |
#define | WT_STAT_DSRC_LSM_LOOKUP_NO_BLOOM |
queries that could have benefited from a Bloom filter that did not exist | |
#define | WT_STAT_DSRC_REC_DICTIONARY |
reconciliation dictionary matches | |
#define | WT_STAT_DSRC_REC_OVERFLOW_KEY_INTERNAL |
reconciliation internal-page overflow keys | |
#define | WT_STAT_DSRC_REC_OVERFLOW_KEY_LEAF |
reconciliation leaf-page overflow keys | |
#define | WT_STAT_DSRC_REC_OVERFLOW_VALUE |
reconciliation overflow values written | |
#define | WT_STAT_DSRC_REC_PAGE_DELETE |
reconciliation pages deleted | |
#define | WT_STAT_DSRC_REC_PAGE_MERGE |
reconciliation pages merged | |
#define | WT_STAT_DSRC_REC_PAGES |
page reconciliation calls | |
#define | WT_STAT_DSRC_REC_PAGES_EVICTION |
page reconciliation calls for eviction | |
#define | WT_STAT_DSRC_REC_SKIPPED_UPDATE |
reconciliation failed because an update could not be included | |
#define | WT_STAT_DSRC_REC_SPLIT_INTERNAL |
reconciliation internal pages split | |
#define | WT_STAT_DSRC_REC_SPLIT_LEAF |
reconciliation leaf pages split | |
#define | WT_STAT_DSRC_REC_SPLIT_MAX |
reconciliation maximum splits for a page | |
#define | WT_STAT_DSRC_SESSION_COMPACT |
object compaction | |
#define | WT_STAT_DSRC_SESSION_CURSOR_OPEN |
open cursor count | |
#define | WT_STAT_DSRC_TXN_UPDATE_CONFLICT |
update conflicts | |
The functions, handles and methods applications use to access and manage data with WiredTiger.
struct WT_ITEM |
A raw item of data to be managed.
Data items have a pointer to the data and a length (limited to 4GB for items stored in tables). WT_ITEM structures do not need to be cleared before use.
Class Members | ||
---|---|---|
const void * | data |
The memory reference of the data item. For items returned by a WT_CURSOR, the pointer is only valid until the next operation on that cursor. Applications that need to keep an item across multiple cursor operations must make a copy. |
uint32_t | size | The number of bytes in the data item. |
#define WT_DEADLOCK |
Conflict between concurrent operations.
This error is generated when an operation cannot be completed due to a conflict with concurrent operations. The operation may be retried; if a transaction is in progress, it should be rolled back and the operation retried in a new transaction.
#define WT_DUPLICATE_KEY |
Attempt to insert an existing key.
This error is generated when the application attempts to insert a record with the same key as an existing record without the 'overwrite' configuration to WT_SESSION::open_cursor.
#define WT_ERROR |
Non-specific WiredTiger error.
This error is returned when an error is not covered by a specific error return.
#define WT_INTPACK32_MAXSIZE |
The maximum packed size of a 32-bit integer.
The wiredtiger_struct_pack function will pack single integers into at most this many bytes.
#define WT_INTPACK64_MAXSIZE |
The maximum packed size of a 64-bit integer.
The wiredtiger_struct_pack function will pack single long integers into at most this many bytes.
#define WT_NOTFOUND |
Item not found.
This error indicates an operation did not find a value to return. This includes cursor search and other operations where no record matched the cursor's search key such as WT_CURSOR::update or WT_CURSOR::remove.
#define WT_PANIC |
WiredTiger library panic.
This error indicates an underlying problem that requires the application exit and restart.
typedef struct __wt_pack_stream WT_PACK_STREAM |
Streaming interface to packing.
This allows applications to pack or unpack records one field at a time. This is an opaque handle returned by wiredtiger_pack_start or wiredtiger_unpack_start. It must be closed with wiredtiger_pack_close.
int wiredtiger_open | ( | const char * | home, |
WT_EVENT_HANDLER * | errhandler, | ||
const char * | config, | ||
WT_CONNECTION ** | connectionp | ||
) |
Open a connection to a database.
home | The path to the database home directory. See Database Home Directory for more information. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
errhandler | An error handler. If NULL , a builtin error handler is installed that writes error messages to stderr | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
config | Configuration string, see Configuration Strings. Permitted values:
WiredTiger.config appears in the WiredTiger home directory, it is read for configuration values (see WiredTiger.config file for details). Configuration values specified in the config argument to the wiredtiger_open function override configuration values specified in the WiredTiger.config file. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[out] | connectionp | A pointer to the newly opened connection handle |
int wiredtiger_pack_close | ( | WT_PACK_STREAM * | ps, |
size_t * | usedp | ||
) |
Close a packing stream.
ps | the packing stream handle | |
[out] | usedp | the number of bytes in the buffer used by the stream |
int wiredtiger_pack_int | ( | WT_PACK_STREAM * | ps, |
int64_t | i | ||
) |
Pack a signed integer into a packing stream.
ps | the packing stream handle |
i | a signed integer to pack |
int wiredtiger_pack_item | ( | WT_PACK_STREAM * | ps, |
WT_ITEM * | item | ||
) |
Pack an item into a packing stream.
ps | the packing stream handle |
item | an item to pack |
int wiredtiger_pack_start | ( | WT_SESSION * | session, |
const char * | format, | ||
void * | buffer, | ||
size_t | size, | ||
WT_PACK_STREAM ** | psp | ||
) |
Start a packing operation into a buffer with the given format string.
This should be followed by a series of calls to wiredtiger_pack_item, wiredtiger_pack_int, wiredtiger_pack_str or wiredtiger_pack_uint to fill in the values.
session | the session handle | |
format | the data format, see Packing and Unpacking Data | |
buffer | a pointer to memory to hold the packed data | |
size | the size of the buffer | |
[out] | psp | the new packing stream handle |
int wiredtiger_pack_str | ( | WT_PACK_STREAM * | ps, |
const char * | s | ||
) |
Pack a string into a packing stream.
ps | the packing stream handle |
s | a string to pack |
int wiredtiger_pack_uint | ( | WT_PACK_STREAM * | ps, |
uint64_t | u | ||
) |
Pack an unsigned integer into a packing stream.
ps | the packing stream handle |
u | an unsigned integer to pack |
const char* wiredtiger_strerror | ( | int | err | ) |
Return information about an error as a string; wiredtiger_strerror is a superset of the ISO C99/POSIX 1003.1-2001 function strerror.
err | a return value from a WiredTiger, C library or POSIX function |
int wiredtiger_struct_pack | ( | WT_SESSION * | session, |
void * | buffer, | ||
size_t | size, | ||
const char * | format, | ||
... | |||
) |
Pack a structure into a buffer.
See Packing and Unpacking Data for a description of the permitted format strings.
For example, the string "iSh"
will pack a 32-bit integer followed by a NUL-terminated string, followed by a 16-bit integer. The default, big-endian encoding will be used, with no alignment. This could be used in C as follows:
Then later, the values can be unpacked as follows:
session | the session handle |
buffer | a pointer to a packed byte array |
size | the number of valid bytes in the buffer |
format | the data format, see Packing and Unpacking Data |
int wiredtiger_struct_size | ( | WT_SESSION * | session, |
size_t * | sizep, | ||
const char * | format, | ||
... | |||
) |
Calculate the size required to pack a structure.
Note that for variable-sized fields including variable-sized strings and integers, the calculated sized merely reflects the expected sizes specified in the format string itself.
session | the session handle |
sizep | a location where the number of bytes needed for the matching call to wiredtiger_struct_pack is returned |
format | the data format, see Packing and Unpacking Data |
int wiredtiger_struct_unpack | ( | WT_SESSION * | session, |
const void * | buffer, | ||
size_t | size, | ||
const char * | format, | ||
... | |||
) |
Unpack a structure from a buffer.
Reverse of wiredtiger_struct_pack: gets values out of a packed byte string.
session | the session handle |
buffer | a pointer to a packed byte array |
size | the number of valid bytes in the buffer |
format | the data format, see Packing and Unpacking Data |
int wiredtiger_unpack_int | ( | WT_PACK_STREAM * | ps, |
int64_t * | ip | ||
) |
Unpack a signed integer from a packing stream.
ps | the packing stream handle | |
[out] | ip | the unpacked signed integer |
int wiredtiger_unpack_item | ( | WT_PACK_STREAM * | ps, |
WT_ITEM * | item | ||
) |
Unpack an item from a packing stream.
ps | the packing stream handle |
item | an item to unpack |
int wiredtiger_unpack_start | ( | WT_SESSION * | session, |
const char * | format, | ||
const void * | buffer, | ||
size_t | size, | ||
WT_PACK_STREAM ** | psp | ||
) |
Start an unpacking operation from a buffer with the given format string.
This should be followed by a series of calls to wiredtiger_unpack_item, wiredtiger_unpack_int, wiredtiger_unpack_str or wiredtiger_unpack_uint to retrieve the packed values.
session | the session handle | |
format | the data format, see Packing and Unpacking Data | |
buffer | a pointer to memory holding the packed data | |
size | the size of the buffer | |
[out] | psp | the new packing stream handle |
int wiredtiger_unpack_str | ( | WT_PACK_STREAM * | ps, |
const char ** | sp | ||
) |
Unpack a string from a packing stream.
ps | the packing stream handle | |
[out] | sp | the unpacked string |
int wiredtiger_unpack_uint | ( | WT_PACK_STREAM * | ps, |
uint64_t * | up | ||
) |
Unpack an unsigned integer from a packing stream.
ps | the packing stream handle | |
[out] | up | the unpacked unsigned integer |
const char* wiredtiger_version | ( | int * | majorp, |
int * | minorp, | ||
int * | patchp | ||
) |
Get version information.
majorp | a location where the major version number is returned |
minorp | a location where the minor version number is returned |
patchp | a location where the patch version number is returned |