Andrew Kryczka 32b4d4ad47 Avoid per-key linear scan over snapshots in compaction (#4495)
Summary:
`CompactionIterator::snapshots_` is ordered by ascending seqnum, just like `DBImpl`'s linked list of snapshots from which it was copied. This PR exploits this ordering to make `findEarliestVisibleSnapshot` do binary search rather than linear scan. This can make flush/compaction significantly faster when many snapshots exist since that function is called on every single key.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4495

Differential Revision: D10386470

Pulled By: ajkr

fbshipit-source-id: 29734991631227b6b7b677e156ac567690118a8b
2018-10-15 16:21:22 -07:00
..
2018-08-09 16:58:40 -07:00
2018-09-13 14:27:31 -07:00
2017-10-17 08:57:09 -07:00
2017-07-15 16:11:23 -07:00
2018-10-10 17:32:27 -07:00
2017-07-15 16:11:23 -07:00
2017-07-26 21:11:47 -07:00
2017-07-15 16:11:23 -07:00
2018-10-10 17:32:27 -07:00
2018-07-16 17:13:10 -07:00
2018-10-04 20:46:50 -07:00
2018-10-04 20:46:50 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2018-05-03 15:43:09 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2018-08-03 17:42:34 -07:00
2018-08-24 18:13:20 -07:00
2018-09-14 11:12:52 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00