Skip to content

Commit fdd298f

Browse files
committed
Refactor ConflictingKeysImpl::getRange to use containedRanges to simplify the code
1 parent 1ba3409 commit fdd298f

File tree

1 file changed

+4
-9
lines changed

1 file changed

+4
-9
lines changed

fdbclient/SpecialKeySpace.actor.cpp

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -694,17 +694,12 @@ Future<RangeResult> ConflictingKeysImpl::getRange(ReadYourWritesTransaction* ryw
694694
GetRangeLimits limitsHint) const {
695695
RangeResult result;
696696
if (ryw->getTransactionState()->conflictingKeys) {
697-
auto krMapPtr = ryw->getTransactionState()->conflictingKeys.get();
698-
auto beginIter = krMapPtr->rangeContaining(kr.begin);
699-
auto endIter = krMapPtr->rangeContaining(kr.end);
700-
701-
if (!kr.contains(beginIter->begin()) && beginIter != endIter)
702-
++beginIter;
703-
for (auto it = beginIter; it != endIter; ++it) {
697+
auto ranges = ryw->getTransactionState()->conflictingKeys->containedRanges(kr);
698+
for (auto it = ranges.begin(); it != ranges.end(); ++it) {
704699
result.push_back_deep(result.arena(), KeyValueRef(it->begin(), it->value()));
705700
}
706-
if (kr.contains(endIter->begin()))
707-
result.push_back_deep(result.arena(), KeyValueRef(endIter->begin(), endIter->value()));
701+
if (kr.contains(ranges.end()->begin()))
702+
result.push_back_deep(result.arena(), KeyValueRef(ranges.end()->begin(), ranges.end()->value()));
708703
}
709704
return result;
710705
}

0 commit comments

Comments
 (0)