Revision a12306fab7701284fab6c7dfe2a8f6ca74f45d94 authored by Jevon Qiao on 04 April 2017, 23:24:08 UTC, committed by Facebook Github Bot on 04 April 2017, 23:39:25 UTC
Summary: Add a notice on gflags installation to help people build and install RocksDB from source code correctly. Please see https://github.com/facebook/rocksdb/issues/1775 Closes https://github.com/facebook/rocksdb/pull/2061 Differential Revision: D4831323 Pulled By: yiwu-arbug fbshipit-source-id: 0df1f0e
1 parent 43010a9
simple_example.cc
// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree. An additional grant
// of patent rights can be found in the PATENTS file in the same directory.
#include <cstdio>
#include <string>
#include "rocksdb/db.h"
#include "rocksdb/slice.h"
#include "rocksdb/options.h"
using namespace rocksdb;
std::string kDBPath = "/tmp/rocksdb_simple_example";
int main() {
DB* db;
Options options;
// Optimize RocksDB. This is the easiest way to get RocksDB to perform well
options.IncreaseParallelism();
options.OptimizeLevelStyleCompaction();
// create the DB if it's not already present
options.create_if_missing = true;
// open DB
Status s = DB::Open(options, kDBPath, &db);
assert(s.ok());
// Put key-value
s = db->Put(WriteOptions(), "key1", "value");
assert(s.ok());
std::string value;
// get 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;
}
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...