Tomislav Novak 5508122ed6 Fix a perf regression in ForwardIterator
Summary:
I noticed that memtable iterator usually crosses the `iterate_upper_bound`
threshold when tailing. Changes introduced in D43833 made `NeedToSeekImmutable`
always return true in such case, even when `Seek()` only needs to rewind the
memtable iterator. In a test I ran, this caused the "tailing efficiency"
(ratio of calls to `Seek()` that only affect the memtable versus all seeks)
to drop almost to zero.

This diff attempts to fix the regression by using a different flag to indicate
that `current_` is over the limit instead of resetting `valid_` in
`UpdateCurrent()`.

Test Plan: `DBTestTailingIterator.TailingIteratorUpperBound`

Reviewers: sdong, rven

Reviewed By: rven

Subscribers: dhruba, march

Differential Revision: https://reviews.facebook.net/D45909
2015-09-01 09:54:30 -07:00
..
2015-08-24 11:11:12 -07:00
2015-08-24 11:11:12 -07:00
2015-07-17 18:59:11 +02:00
2015-07-17 12:02:52 -07:00
2015-07-20 17:20:40 -07:00
2015-08-25 12:29:44 -07:00
2015-08-25 12:29:44 -07:00
2015-08-28 18:06:32 -07:00
2015-08-11 17:52:23 -07:00
2015-07-20 17:20:40 -07:00
2015-04-23 12:10:36 -07:00
2015-03-17 14:08:00 -07:00
2015-08-24 11:11:12 -07:00
2015-08-24 11:11:12 -07:00
2015-01-26 11:48:07 -08:00
2015-07-07 12:10:10 -07:00
2015-08-05 07:33:27 -07:00
2015-08-05 07:33:27 -07:00
2015-03-30 16:05:35 -04:00
2015-08-24 11:11:12 -07:00
2015-03-17 14:08:00 -07:00
2015-08-11 11:25:22 -07:00
2015-08-06 17:59:05 -07:00
2015-07-20 17:20:40 -07:00
2014-11-10 17:39:38 -05:00
2015-07-29 16:54:23 -07:00
2015-07-29 16:54:23 -07:00
2015-08-06 17:59:05 -07:00
2015-05-29 14:36:35 -07:00