Andrew Kryczka ec2f64794b Consider subcompaction boundaries when updating file boundaries for range deletion
Summary:
Adjusted AddToBuilder() to take lower_bound and upper_bound, which serve two purposes: (1) only range deletions overlapping with the interval [lower_bound, upper_bound) will be added to the output file, and (2) the output file's boundaries will not be extended before lower_bound or after upper_bound. Our computation of lower_bound/upper_bound consider both subcompaction boundaries and previous/next files within the subcompaction.

Test cases are here (level subcompactions: https://gist.github.com/ajkr/63c7eae3e9667c5ebdc0a7efb74ac332, and universal subcompactions: https://gist.github.com/ajkr/5a62af77c4ebe4052a1955c496d51fdb) but can't be included in this diff as they depend on committing the API first. They fail before this change and pass after.
Closes https://github.com/facebook/rocksdb/pull/1501

Reviewed By: yhchiang

Differential Revision: D4171685

Pulled By: ajkr

fbshipit-source-id: ee99db8
2016-11-14 20:24:21 -08:00
..
2016-10-31 20:54:18 -07:00
2016-11-03 18:54:20 -07:00
2016-09-13 21:11:59 -07:00
2016-11-03 18:54:20 -07:00
2016-11-04 12:09:22 -07:00
2016-11-04 12:09:22 -07:00
2016-11-10 11:09:22 -08:00
2016-09-27 18:20:57 -07:00
2016-10-31 20:54:18 -07:00
2016-07-08 17:50:51 -07:00
2016-10-13 08:48:40 -07:00
2016-07-08 17:50:51 -07:00
2016-11-03 18:54:20 -07:00
2016-10-31 20:54:18 -07:00
2016-09-27 18:20:57 -07:00
2016-09-27 18:20:57 -07:00
2016-07-13 15:36:22 -07:00
2016-06-25 08:29:40 +01:00