rocksdb/tools
Peter (Stig) Edwards b06ca5f860 ldb load, prefer ifsteam(/dev/stdin) to std::cin (#1207)
getline on std::cin can be very inefficient when ldb is loading large values, with high CPU usage in libc _IO_(un)getc, this is because of the performance penalty that comes from synchronizing stdio and iostream buffers.
See the reproducers and tests in #1133 .
If an ifstream on /dev/stdin is used (when available) then using ldb to load large values can be much more efficient.
I thought for ldb load, that this approach is preferable to using <cstdio> or std::ios_base::sync_with_stdio(false).
I couldn't think of a use case where ldb load would need to support reading unbuffered input, an alternative approach would be to add support for passing --input_file=/dev/stdin.
I have a CLA in place, thanks.

The CI tests were failing at the time of https://github.com/facebook/rocksdb/pull/1156, so this change and PR will supersede it.
2016-07-22 11:46:40 -07:00
..
dump Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08: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_leveldb.sh Add scripts to run leveldb benchmark 2015-04-27 19:32:56 -07:00
benchmark.sh Initial script for the new regression test 2016-05-09 13:32:57 -07:00
check_format_compatible.sh Fetch branches from github for format compatibility test 2016-06-10 13:17:14 -07:00
db_bench_tool_test.cc Allows db_bench to take an options file 2016-06-02 16:24:14 -07:00
db_bench_tool.cc Fixed Minor Bug on Windows Build and db_bench_tool.cc (#1189) 2016-06-29 18:44:22 -07:00
db_bench.cc Initial script for the new regression test 2016-05-09 13:32:57 -07:00
db_crashtest.py Introduce FullMergeV2 (eliminate memcpy from merge operators) 2016-07-20 09:49:03 -07:00
db_repl_stress.cc Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08:00
db_sanity_test.cc Fix clang analyzer errors 2016-07-08 17:50:51 -07:00
db_stress.cc Introduce FullMergeV2 (eliminate memcpy from merge operators) 2016-07-20 09:49:03 -07: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_cmd_impl.h ldb backup support 2016-07-14 14:09:31 -07:00
ldb_cmd_test.cc [ldb] Export ldb_cmd*.h 2016-05-06 16:09:09 -07:00
ldb_cmd.cc ldb load, prefer ifsteam(/dev/stdin) to std::cin (#1207) 2016-07-22 11:46:40 -07:00
ldb_test.py ldb to support --column_family option 2016-01-25 14:58:18 -08:00
ldb_tool.cc ldb backup support 2016-07-14 14:09:31 -07:00
ldb.cc Updated all copyright headers to the new format. 2016-02-09 15:12:00 -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 [ldb] Templatize the Selector 2016-05-13 12:12:39 -07:00
regression_test.sh Improve regression_test.sh 2016-06-28 14:10:24 -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 Update benchmarks used to measure subcompaction performance 2016-03-04 12:32:11 -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_test.cc Shared dictionary compression using reference block 2016-04-27 17:36:03 -07:00
sst_dump_tool_imp.h Adding pin_l0_filter_and_index_blocks_in_cache feature and related fixes. 2016-04-01 10:42:39 -07:00
sst_dump_tool.cc New Statistics to track Compression/Decompression (#1197) 2016-07-19 09:44:03 -07:00
sst_dump.cc Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08: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_runner.py Write stress test 2015-10-28 16:15:07 -07:00
write_stress.cc Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08:00