rocksdb/tools
Gunnar Kudrjavets b1a3b4c0d0 Make ldb automagically determine the file type and use the correct dumping function
Summary:
This set of changes implements the following design: `ldb` will utilize `--path` parameter which can be used to specify a file name. Tool will then apply some heuristic to determine how to output the data properly. The design decision is not to probe the file content, but use file names to determine what dumping function to call.

Usage examples:

Understands that path points to a manifest file and dumps it.
`./ldb --path=/tmp/test_db/MANIFEST-000023 dump`

Understands that path points to a WAL file and dumps it.
`./ldb --path=/tmp/test_db/000024.log dump --header`

Understands that path points to a SST file and dumps it.
`./ldb --path=/tmp/test_db/000007.sst dump`

Figures out that none of the supported file types are applicable and outputs
an appropriate error message.
`./ldb --path=/tmp/cron.log dump`

Test Plan:
Basics:

git diff
make clean
make -j 32 commit-prereq
arc lint

More specific testing (done as part of commit-prereq, but can be iterated separately when making isolated changes):

make clean
make ldb
python tools/ldb_test.py
make rocksdb_dump
make rocksdb_undump
sh tools/rocksdb_dump_test.sh

Reviewers: rven, IslamAbdelRahman, yhchiang, kradhakrishnan, anthony, igor, sdong

Reviewed By: sdong

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D52269
2016-01-06 14:19:08 -08:00
..
dump Update dump_tool and undump_tool to accept Options 2015-10-05 19:49:48 -07:00
rdb fix typos in comments 2015-12-11 01:54:48 +09:00
auto_sanity_test.sh fix typos in comments 2015-12-11 01:54:48 +09:00
benchmark.sh Enhance db_bench write rate limit 2016-01-04 12:01:27 -08:00
benchmark_leveldb.sh Add scripts to run leveldb benchmark 2015-04-27 19:32:56 -07:00
check_format_compatible.sh Script to check whether RocksDB can read DB generated by previous releases and vice versa 2015-04-08 16:04:59 -07:00
db_crashtest.py crash_test to trigger some less frequent crash point more frequently 2015-10-27 12:06:06 -07:00
db_repl_stress.cc "make format" against last 10 commits 2015-07-13 13:50:18 -07:00
db_sanity_test.cc Add ZSTD (not final format) compression type 2015-08-28 11:01:13 -07:00
db_stress.cc Enable MS compiler warning c4244. 2015-12-11 16:47:34 -08:00
dbench_monitor Added simple monitoring script to monitor overusage of memory in db_bench 2015-02-11 18:40:11 -08:00
Dockerfile adding docker build script and dockerfile 2015-05-22 16:03:39 -07:00
generate_random_db.sh Script to check whether RocksDB can read DB generated by previous releases and vice versa 2015-04-08 16:04:59 -07:00
ldb.cc Make db_stress built for ROCKSDB_LITE 2014-11-14 10:20:51 -08:00
ldb_cmd.cc Make ldb automagically determine the file type and use the correct dumping function 2016-01-06 14:19:08 -08:00
ldb_cmd.h Make ldb automagically determine the file type and use the correct dumping function 2016-01-06 14:19:08 -08:00
ldb_cmd_execute_result.h Move ldb and sst_dump from utils to tools. 2015-10-14 17:08:28 -07:00
ldb_cmd_test.cc Block tests under ROCKSDB_LITE 2015-10-15 10:51:00 -07:00
ldb_test.py Make ldb automagically determine the file type and use the correct dumping function 2016-01-06 14:19:08 -08:00
ldb_tool.cc Reduce moving memory in LDB::ScanCommand 2015-11-19 22:26:37 -08:00
pflag Added simple monitoring script to monitor overusage of memory in db_bench 2015-02-11 18:40:11 -08:00
reduce_levels_test.cc Move ldb and sst_dump from utils to tools. 2015-10-14 17:08:28 -07:00
rocksdb_dump_test.sh Update dump_tool and undump_tool to accept Options 2015-10-05 19:49:48 -07:00
run_flash_bench.sh Enhance db_bench write rate limit 2016-01-04 12:01:27 -08:00
run_leveldb.sh Add scripts to run leveldb benchmark 2015-04-27 19:32:56 -07:00
sample-dump.dmp First version of rocksdb_dump and rocksdb_undump. 2015-06-19 16:24:36 -07:00
sst_dump.cc Make db_stress built for ROCKSDB_LITE 2014-11-14 10:20:51 -08:00
sst_dump_test.cc Move ldb and sst_dump from utils to tools. 2015-10-14 17:08:28 -07:00
sst_dump_tool.cc Skip bottom-level filter block caching when hit-optimized 2015-12-23 10:15:07 -08:00
sst_dump_tool_imp.h Move ldb and sst_dump from utils to tools. 2015-10-14 17:08:28 -07:00
verify_random_db.sh Script to check whether RocksDB can read DB generated by previous releases and vice versa 2015-04-08 16:04:59 -07:00
write_stress.cc Enable MS compiler warning c4244. 2015-12-11 16:47:34 -08:00
write_stress_runner.py Write stress test 2015-10-28 16:15:07 -07:00