fix right_border
This commit is contained in:
@ -357,11 +357,7 @@ int ObBlockMetaTree::locate_range(const blocksstable::ObDatumRange &range,
|
|||||||
if (!is_right_border || range.get_end_key().is_max_rowkey()) {
|
if (!is_right_border || range.get_end_key().is_max_rowkey()) {
|
||||||
end_idx = sorted_rowkeys_.count() - 1;
|
end_idx = sorted_rowkeys_.count() - 1;
|
||||||
} else {
|
} else {
|
||||||
if (range.is_right_closed()) {
|
end_idx = std::lower_bound(sorted_rowkeys_.begin(), sorted_rowkeys_.end(), range.get_end_key(), cmp) - sorted_rowkeys_.begin();
|
||||||
end_idx = std::lower_bound(sorted_rowkeys_.begin(), sorted_rowkeys_.end(), range.get_end_key(), cmp) - sorted_rowkeys_.begin();
|
|
||||||
} else {
|
|
||||||
end_idx = std::upper_bound(sorted_rowkeys_.begin(), sorted_rowkeys_.end(), range.get_end_key(), cmp) - sorted_rowkeys_.begin();
|
|
||||||
}
|
|
||||||
if (sorted_rowkeys_.count() == end_idx) {
|
if (sorted_rowkeys_.count() == end_idx) {
|
||||||
end_idx = sorted_rowkeys_.count() - 1;
|
end_idx = sorted_rowkeys_.count() - 1;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user