leveldb/util
Sanjay Ghemawat ac1d69da31 LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened.
(Based on a suggestion by cmumford.)

"open" benchmark on my workstation speeds up significantly since we
can now avoid three fdatasync calls and a compaction per open:

  Before: ~80000 microseconds
  After:    ~130 microseconds

Details:

(1) Added Options::reuse_logs (currently defaults to false) to control
new behavior.  The intention is to change the default to true after some
baking.

(2) Added Env::NewAppendableFile() whose default implementation returns
a not-supported error.

(3) VersionSet::Recovery attempts to reuse the MANIFEST from which
it is recovering.

(4) DBImpl recovery attempts to reuse the last log file and memtable.

(5) db_test.cc now tests a new configuration that sets reuse_logs to true.

(6) fault_injection_test also tests a reuse_logs==true config.

(7) Added a new recovery_test.
2015-08-11 14:56:39 -07:00
..
arena_test.cc Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
arena.cc Release LevelDB 1.14 2013-09-19 13:49:19 -07:00
arena.h Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
bloom_test.cc Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
bloom.cc Release 1.18 2014-09-16 14:19:52 -07:00
cache_test.cc A number of fixes: 2011-10-31 17:22:06 +00:00
cache.cc Release leveldb 1.10 2013-05-14 17:03:07 -07:00
coding_test.cc Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
coding.cc Update to leveldb 1.6 2012-10-12 11:53:12 -07:00
coding.h A number of fixes: 2011-10-31 17:22:06 +00:00
comparator.cc Remove static initializer; fix endian-ness detection; fix build on 2012-05-30 09:45:46 -07:00
crc32c_test.cc A number of fixes: 2011-10-31 17:22:06 +00:00
crc32c.cc A number of fixes: 2011-10-31 17:22:06 +00:00
crc32c.h A number of fixes: 2011-10-31 17:22:06 +00:00
env_posix.cc LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened. 2015-08-11 14:56:39 -07:00
env_test.cc fixed issues 66 (leaking files on disk error) and 68 (no sync of CURRENT file) 2012-01-25 14:56:52 -08:00
env.cc LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened. 2015-08-11 14:56:39 -07:00
filter_policy.cc Added bloom filter support. 2012-04-17 08:36:46 -07:00
hash_test.cc Release 1.18 2014-09-16 14:19:52 -07:00
hash.cc Release 1.18 2014-09-16 14:19:52 -07:00
hash.h reverting disastrous MOE commit, returning to r21 2011-04-19 23:11:15 +00:00
histogram.cc A number of fixes: 2011-10-31 17:22:06 +00:00
histogram.h A number of fixes: 2011-10-31 17:22:06 +00:00
logging.cc Release 1.18 2014-09-16 14:19:52 -07:00
logging.h Release 1.18 2014-09-16 14:19:52 -07:00
mutexlock.h Update to leveldb 1.6 2012-10-12 11:53:12 -07:00
options.cc LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened. 2015-08-11 14:56:39 -07:00
posix_logger.h A number of fixes: 2011-10-31 17:22:06 +00:00
random.h LevelDB 1.13 2013-08-21 11:12:47 -07:00
status.cc A number of fixes: 2011-10-31 17:22:06 +00:00
testharness.cc Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
testharness.h A number of fixes: 2011-10-31 17:22:06 +00:00
testutil.cc Release LevelDB 1.15 2013-12-10 10:36:31 -08:00
testutil.h LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened. 2015-08-11 14:56:39 -07:00