rocksdb/util
Igor Canadi c2da9e5997 Flush before Fsync()/Sync()
Summary: Calling Fsync()/Sync() on a file should give the guarantee that whatever you written to the file is now persisted. This is currently not the case, since we might have some data left in application cache as we do Fsync()/Sync(). For example, BuildTable() calls Fsync() without the flush, assuming all sst data is now persisted, but it's actually not. This may result in big inconsistencies.

Test Plan: no test

Reviewers: sdong, dhruba, haobo, ljin, yhchiang

Reviewed By: sdong

CC: leveldb

Differential Revision: https://reviews.facebook.net/D18159
2014-04-21 17:45:04 -07:00
..
arena_test.cc Clean up arena API 2014-01-30 22:10:10 -08:00
arena.cc A heuristic way to check if a memtable is full 2014-03-12 16:40:14 -07:00
arena.h Fix HashSkipList and HashLinkedList SIGSEGV 2014-03-14 10:02:04 -07:00
auto_roll_logger_test.cc Renamed InfoLogLevel::DEBUG to InfoLogLevel::DEBUG_LEVEL 2014-04-10 15:27:42 -07:00
auto_roll_logger.cc Merge branch 'master' into columnfamilies 2014-04-02 10:48:05 -07:00
auto_roll_logger.h Renamed InfoLogLevel::DEBUG to InfoLogLevel::DEBUG_LEVEL 2014-04-10 15:27:42 -07:00
autovector_test.cc Turn on -Wmissing-prototypes 2014-04-09 21:17:14 -07:00
autovector.h RocksDBLite 2014-04-15 13:39:26 -07:00
benchharness_test.cc Move benchmark timing to Env::NowNanos() 2014-04-21 17:43:51 -07:00
benchharness.cc Move benchmark timing to Env::NowNanos() 2014-04-21 17:43:51 -07:00
benchharness.h Move benchmark timing to Env::NowNanos() 2014-04-21 17:43:51 -07:00
blob_store_test.cc Move the compiler back to 4.8.1 + more small fixes 2013-11-18 11:40:16 -08:00
blob_store.cc RocksDBLite 2014-04-15 13:39:26 -07:00
blob_store.h RocksDBLite 2014-04-15 13:39:26 -07:00
bloom_test.cc [RocksDB] [Performance Branch] Added dynamic bloom, to be used for memable non-existing key filtering 2013-12-11 00:15:14 -08:00
bloom.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
build_version.h Dont build version if compiling for IOS 2014-04-11 10:54:47 -07:00
cache_test.cc Turn on -Wmissing-prototypes 2014-04-09 21:17:14 -07:00
cache.cc Merge branch 'master' into performance 2014-01-28 10:35:55 -08:00
coding_test.cc Misc cleanup on performance branch 2014-01-17 14:26:29 -08:00
coding.cc Merge branch 'master' into performance 2014-01-28 10:35:55 -08:00
coding.h Merge branch 'master' into performance 2014-01-28 10:35:55 -08:00
comparator.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
crc32c_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
crc32c.cc Dynamically choose SSE 4.2 2014-04-04 14:03:19 -07:00
crc32c.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
dynamic_bloom_test.cc Fix some other signed & unsigned comparisons 2014-04-03 20:51:27 -07:00
dynamic_bloom.cc dynamicbloom fix: don't offset address when it is already aligned 2014-03-28 17:30:20 -07:00
dynamic_bloom.h cache friendly blocked bloomfilter 2014-03-28 09:21:20 -07:00
env_hdfs.cc Enable log info with different levels. 2014-02-26 14:41:28 -08:00
env_posix.cc Flush before Fsync()/Sync() 2014-04-21 17:45:04 -07:00
env_test.cc Rename "benchmark" back to "bench". 2014-04-21 13:12:15 -07:00
env.cc Renamed InfoLogLevel::DEBUG to InfoLogLevel::DEBUG_LEVEL 2014-04-10 15:27:42 -07:00
filelock_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
filter_policy.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
hash_linklist_rep.cc RocksDBLite 2014-04-15 13:39:26 -07:00
hash_linklist_rep.h RocksDBLite 2014-04-15 13:39:26 -07:00
hash_skiplist_rep.cc RocksDBLite 2014-04-15 13:39:26 -07:00
hash_skiplist_rep.h RocksDBLite 2014-04-15 13:39:26 -07:00
hash.cc Add a hash-index component for block 2014-03-03 21:11:49 -08:00
hash.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
histogram_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
histogram.cc Statistics code cleanup 2014-01-17 12:46:06 -08:00
histogram.h Statistics code cleanup 2014-01-17 12:46:06 -08:00
ldb_cmd_execute_result.h Revert "Don't compile ldb tool into static library" 2014-04-15 11:29:02 -07:00
ldb_cmd.cc RocksDBLite 2014-04-15 13:39:26 -07:00
ldb_cmd.h Revert "Don't compile ldb tool into static library" 2014-04-15 11:29:02 -07:00
ldb_tool.cc RocksDBLite 2014-04-15 13:39:26 -07:00
log_buffer.cc Fix data corruption by LogBuffer 2014-03-21 15:32:48 -07:00
log_buffer.h Fix data race against logging data structure because of LogBuffer 2014-03-11 16:09:53 -07:00
log_write_bench.cc Rename "benchmark" back to "bench". 2014-04-21 13:12:15 -07:00
logging.cc RocksDBLite 2014-04-15 13:39:26 -07:00
logging.h RocksDBLite 2014-04-15 13:39:26 -07:00
manual_compaction_test.cc Fix CompactRange to apply filter to every key 2014-01-14 16:19:09 -08:00
murmurhash.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
murmurhash.h Add a hash-index component for block 2014-03-03 21:11:49 -08:00
mutexlock.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
options.cc Renamed InfoLogLevel::DEBUG to InfoLogLevel::DEBUG_LEVEL 2014-04-10 15:27:42 -07:00
perf_context_imp.h macros for perf_context 2014-04-08 10:58:07 -07:00
perf_context.cc macros for perf_context 2014-04-08 10:58:07 -07:00
posix_logger.h Renamed InfoLogLevel::DEBUG to InfoLogLevel::DEBUG_LEVEL 2014-04-10 15:27:42 -07:00
random.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
signal_test.cc Turn on -Wmissing-prototypes 2014-04-09 21:17:14 -07:00
skiplistrep.cc make hash_link_list Node's key space consecutively followed at the end 2014-04-04 15:37:28 -07:00
slice.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
stack_trace.h Print stack trace on assertion failure 2013-12-06 17:11:09 -08:00
statistics.cc convert Tickers back to array with padding and alignment 2014-01-29 15:08:41 -08:00
statistics.h cache SuperVersion in thread local storage to avoid mutex lock 2014-02-27 11:38:55 -08:00
stats_logger.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
status.cc IOError cleanup 2014-02-12 11:42:54 -08:00
stl_wrappers.h Killing Transform Rep 2013-12-03 12:42:15 -08:00
stop_watch.h Statistics code cleanup 2014-01-17 12:46:06 -08:00
string_util.cc Turn on -Wmissing-prototypes 2014-04-09 21:17:14 -07:00
string_util.h Turn on -Wmissing-prototypes 2014-04-09 21:17:14 -07:00
sync_point.cc Don't compile sync_point if NDEBUG 2014-04-17 10:49:58 -07:00
sync_point.h Fix ifdef NDEBUG 2014-04-17 14:29:28 -07:00
testharness.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testharness.h Print stack trace on assertion failure 2013-12-06 17:11:09 -08:00
testutil.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testutil.h [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
thread_local_test.cc reduce thread count in ThreadLocalTest.ConcurrentReadWriteTest 2014-04-01 16:26:07 -07:00
thread_local.cc use CAS when returning SuperVersion to ThreadLocal 2014-03-07 14:43:22 -08:00
thread_local.h Merge branch 'master' into columnfamilies 2014-03-07 16:59:47 -08:00
vectorrep.cc RocksDBLite 2014-04-15 13:39:26 -07:00