2 * Copyright (C) 2017 Cisco Inc.
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License, version 2,
6 * as published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 // @author Changxue Deng <chadeng@cisco.com>
19 #include <mabain/db.h>
21 using namespace mabain;
23 const char *db_dir = "./tmp_dir/";
25 // Insert key-value pair to mabain db
26 int main(int argc, char *argv[])
32 mabain::DB::SetLogFile("/var/tmp/mabain_test/mabain.log");
34 DB db(db_dir, CONSTS::WriterOptions());
36 std::cerr << "failed to open mabain db: " << db.StatusStr() << "\n";
40 std::string key[3], value[3];
50 for(int i = 0; i < 3; i++) {
51 rval = db.Add(key[i], value[i]);
52 if(rval != MBError::SUCCESS) {
53 std::cout << key[i] << ": " << MBError::get_error_str(rval) << std::endl;
57 db.PrintStats(std::cout);
60 mabain::DB::CloseLogFile();