diff --git a/.gitignore b/.gitignore index 70316aebc..dfd3f4924 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ make_config.mk *.d-e *.o-* *.swp +*~ ldb manifest_dump diff --git a/examples/.gitignore b/examples/.gitignore index d3c22099a..5cb04d4b6 100644 --- a/examples/.gitignore +++ b/examples/.gitignore @@ -1,2 +1,4 @@ column_families_example simple_example +c_simple_example +compact_files_example diff --git a/examples/simple_example.cc b/examples/simple_example.cc index 20e7faa4b..28a7c9e8b 100644 --- a/examples/simple_example.cc +++ b/examples/simple_example.cc @@ -27,14 +27,28 @@ int main() { assert(s.ok()); // Put key-value - s = db->Put(WriteOptions(), "key", "value"); + s = db->Put(WriteOptions(), "key1", "value"); assert(s.ok()); std::string value; // get value - s = db->Get(ReadOptions(), "key", &value); + s = db->Get(ReadOptions(), "key1", &value); assert(s.ok()); assert(value == "value"); + // atomically apply a set of updates + { + WriteBatch batch; + batch.Delete("key1"); + batch.Put("key2", value); + s = db->Write(WriteOptions(), &batch); + } + + s = db->Get(ReadOptions(), "key1", &value); + assert(s.IsNotFound()); + + db->Get(ReadOptions(), "key2", &value); + assert(value == "value"); + delete db; return 0;