172 "%s/leveldb_c_test-%d",
220 CheckGet(db, roptions,
"foo", NULL);
223 leveldb_put(db, woptions,
"foo", 3,
"hello", 5, &err);
225 CheckGet(db, roptions,
"foo",
"hello");
229 CheckGet(db, roptions,
"foo",
"hello");
233 CheckGet(db, roptions,
"foo",
"hello");
245 CheckGet(db, roptions,
"foo",
"hello");
246 CheckGet(db, roptions,
"bar", NULL);
283 const char* start[2] = {
"a",
"k00000000000000010000" };
284 size_t start_len[2] = { 1, 21 };
285 const char* limit[2] = {
"k00000000000000010000",
"z" };
286 size_t limit_len[2] = { 21, 1 };
288 for (i = 0; i < n; i++) {
289 snprintf(keybuf,
sizeof(keybuf),
"k%020d", i);
290 snprintf(valbuf,
sizeof(valbuf),
"v%020d", i);
291 leveldb_put(db, woptions, keybuf, strlen(keybuf), valbuf, strlen(valbuf),
316 CheckGet(db, roptions,
"foo",
"hello");
318 CheckGet(db, roptions,
"foo", NULL);
331 CheckGet(db, roptions,
"foo", NULL);
332 CheckGet(db, roptions,
"bar", NULL);
339 for (run = 0; run < 2; run++) {
356 leveldb_put(db, woptions,
"foo", 3,
"foovalue", 8, &err);
358 leveldb_put(db, woptions,
"bar", 3,
"barvalue", 8, &err);
363 CheckGet(db, roptions,
"foo",
"foovalue");
364 CheckGet(db, roptions,
"bar",
"barvalue");
368 CheckGet(db, roptions,
"foo", NULL);
369 CheckGet(db, roptions,
"bar", NULL);
372 CheckGet(db, roptions,
"foo",
"foovalue");
373 CheckGet(db, roptions,
"bar",
"barvalue");
388 fprintf(stderr,
"PASS\n");
void leveldb_writebatch_clear(leveldb_writebatch_t *b)
void leveldb_options_set_cache(leveldb_options_t *opt, leveldb_cache_t *c)
void leveldb_options_set_paranoid_checks(leveldb_options_t *opt, unsigned char v)
static void CheckIter(leveldb_iterator_t *iter, const char *key, const char *val)
void leveldb_cache_destroy(leveldb_cache_t *cache)
void leveldb_iter_seek_to_last(leveldb_iterator_t *iter)
static const char * CmpName(void *arg)
void leveldb_options_set_block_restart_interval(leveldb_options_t *opt, int n)
static void CheckPut(void *ptr, const char *k, size_t klen, const char *v, size_t vlen)
static const char * FilterName(void *arg)
int leveldb_minor_version()
void leveldb_release_snapshot(leveldb_t *db, const leveldb_snapshot_t *snapshot)
unsigned char FilterKeyMatch(void *arg, const char *key, size_t length, const char *filter, size_t filter_length)
void leveldb_iter_prev(leveldb_iterator_t *iter)
int leveldb_major_version()
void leveldb_options_set_create_if_missing(leveldb_options_t *opt, unsigned char v)
void leveldb_destroy_db(const leveldb_options_t *options, const char *name, char **errptr)
void leveldb_options_set_filter_policy(leveldb_options_t *opt, leveldb_filterpolicy_t *policy)
leveldb_writebatch_t * leveldb_writebatch_create()
static char * FilterCreate(void *arg, const char *const *key_array, const size_t *key_length_array, int num_keys, size_t *filter_length)
void leveldb_iter_next(leveldb_iterator_t *iter)
leveldb_comparator_t * leveldb_comparator_create(void *state, void(*destructor)(void *), int(*compare)(void *, const char *a, size_t alen, const char *b, size_t blen), const char *(*name)(void *))
void leveldb_put(leveldb_t *db, const leveldb_writeoptions_t *options, const char *key, size_t keylen, const char *val, size_t vallen, char **errptr)
leveldb_readoptions_t * leveldb_readoptions_create()
static void FilterDestroy(void *arg)
void leveldb_write(leveldb_t *db, const leveldb_writeoptions_t *options, leveldb_writebatch_t *batch, char **errptr)
void leveldb_iter_get_error(const leveldb_iterator_t *iter, char **errptr)
void leveldb_options_destroy(leveldb_options_t *options)
void leveldb_writebatch_destroy(leveldb_writebatch_t *b)
static int CmpCompare(void *arg, const char *a, size_t alen, const char *b, size_t blen)
const leveldb_snapshot_t * leveldb_create_snapshot(leveldb_t *db)
void leveldb_writebatch_delete(leveldb_writebatch_t *b, const char *key, size_t klen)
char * leveldb_property_value(leveldb_t *db, const char *propname)
static void CheckDel(void *ptr, const char *k, size_t klen)
void leveldb_iter_destroy(leveldb_iterator_t *iter)
void leveldb_iter_seek_to_first(leveldb_iterator_t *iter)
void leveldb_free(void *ptr)
leveldb_writeoptions_t * leveldb_writeoptions_create()
leveldb_env_t * leveldb_create_default_env()
void leveldb_writebatch_put(leveldb_writebatch_t *b, const char *key, size_t klen, const char *val, size_t vlen)
unsigned char leveldb_iter_valid(const leveldb_iterator_t *iter)
void leveldb_options_set_comparator(leveldb_options_t *opt, leveldb_comparator_t *cmp)
void leveldb_options_set_max_open_files(leveldb_options_t *opt, int n)
static void Free(char **ptr)
void leveldb_compact_range(leveldb_t *db, const char *start_key, size_t start_key_len, const char *limit_key, size_t limit_key_len)
void leveldb_options_set_error_if_exists(leveldb_options_t *opt, unsigned char v)
#define CheckCondition(cond)
void leveldb_close(leveldb_t *db)
void leveldb_options_set_info_log(leveldb_options_t *opt, leveldb_logger_t *l)
leveldb_filterpolicy_t * leveldb_filterpolicy_create(void *state, void(*destructor)(void *), char *(*create_filter)(void *, const char *const *key_array, const size_t *key_length_array, int num_keys, size_t *filter_length), unsigned char(*key_may_match)(void *, const char *key, size_t length, const char *filter, size_t filter_length), const char *(*name)(void *))
void leveldb_readoptions_set_snapshot(leveldb_readoptions_t *opt, const leveldb_snapshot_t *snap)
void leveldb_options_set_compression(leveldb_options_t *opt, int t)
void leveldb_filterpolicy_destroy(leveldb_filterpolicy_t *filter)
static void StartPhase(const char *name)
#define CheckNoError(err)
static void CheckGet(leveldb_t *db, const leveldb_readoptions_t *options, const char *key, const char *expected)
void leveldb_delete(leveldb_t *db, const leveldb_writeoptions_t *options, const char *key, size_t keylen, char **errptr)
leveldb_filterpolicy_t * leveldb_filterpolicy_create_bloom(int bits_per_key)
leveldb_options_t * leveldb_options_create()
void leveldb_iter_seek(leveldb_iterator_t *iter, const char *k, size_t klen)
void leveldb_env_destroy(leveldb_env_t *env)
void leveldb_readoptions_destroy(leveldb_readoptions_t *opt)
void leveldb_readoptions_set_verify_checksums(leveldb_readoptions_t *opt, unsigned char v)
static const char * GetTempDir(void)
void leveldb_approximate_sizes(leveldb_t *db, int num_ranges, const char *const *range_start_key, const size_t *range_start_key_len, const char *const *range_limit_key, const size_t *range_limit_key_len, uint64_t *sizes)
static unsigned char fake_filter_result
void leveldb_comparator_destroy(leveldb_comparator_t *cmp)
void leveldb_writeoptions_destroy(leveldb_writeoptions_t *opt)
void leveldb_options_set_env(leveldb_options_t *opt, leveldb_env_t *env)
void leveldb_readoptions_set_fill_cache(leveldb_readoptions_t *opt, unsigned char v)
void leveldb_options_set_write_buffer_size(leveldb_options_t *opt, size_t s)
leveldb_iterator_t * leveldb_create_iterator(leveldb_t *db, const leveldb_readoptions_t *options)
leveldb_cache_t * leveldb_cache_create_lru(size_t capacity)
void leveldb_writeoptions_set_sync(leveldb_writeoptions_t *opt, unsigned char v)
leveldb_t * leveldb_open(const leveldb_options_t *options, const char *name, char **errptr)
static void CmpDestroy(void *arg)
void leveldb_repair_db(const leveldb_options_t *options, const char *name, char **errptr)
void leveldb_options_set_block_size(leveldb_options_t *opt, size_t s)
void leveldb_writebatch_iterate(leveldb_writebatch_t *b, void *state, void(*put)(void *, const char *k, size_t klen, const char *v, size_t vlen), void(*deleted)(void *, const char *k, size_t klen))