rocksdb/include/leveldb
Mark Callaghan 993543d1be Add rate_delay_limit_milliseconds
Summary:
This adds the rate_delay_limit_milliseconds option to make the delay
configurable in MakeRoomForWrite when the max compaction score is too high.
This delay is called the Ln slowdown. This change also counts the Ln slowdown
per level to make it possible to see where the stalls occur.

From IO-bound performance testing, the Level N stalls occur:
* with compression -> at the largest uncompressed level. This makes sense
                      because compaction for compressed levels is much
                      slower. When Lx is uncompressed and Lx+1 is compressed
                      then files pile up at Lx because the (Lx,Lx+1)->Lx+1
                      compaction process is the first to be slowed by
                      compression.
* without compression -> at level 1

Task ID: #1832108

Blame Rev:

Test Plan:
run with real data, added test

Revert Plan:

Database Impact:

Memcache Impact:

Other Notes:

EImportant:

- begin *PUBLIC* platform impact section -
Bugzilla: #
- end platform impact -

Reviewers: dhruba

Reviewed By: dhruba

Differential Revision: https://reviews.facebook.net/D9045
2013-03-04 07:41:15 -08:00
..
c.h Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
cache.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
comparator.h A number of fixes: 2011-10-31 17:22:06 +00:00
db.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
env.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
filter_policy.h Added bloom filter support. 2012-04-17 08:36:46 -07:00
iterator.h A number of fixes: 2011-10-31 17:22:06 +00:00
options.h Add rate_delay_limit_milliseconds 2013-03-04 07:41:15 -08:00
slice.h manifest_dump: Add --hex=1 option 2012-12-16 08:58:28 -08:00
statistics.h Refactor statistics. Remove individual functions like incNumFileOpens 2013-02-25 13:58:34 -08:00
status.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
table_builder.h Fix all the lint errors. 2012-11-28 17:18:41 -08:00
table.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
transaction_log_iterator.h GetSequence API in write batch. 2012-12-12 22:21:10 -08:00
types.h GetUpdatesSince API to enable replication. 2012-12-07 11:42:13 -08:00
write_batch.h Enhancements to rocksdb for better support for replication. 2012-12-17 11:40:19 -08:00