diff --git a/src/Storages/MergeTree/MarkRange.h b/src/Storages/MergeTree/MarkRange.h index 3ea0c97b2db60..4dafe74049d9e 100644 --- a/src/Storages/MergeTree/MarkRange.h +++ b/src/Storages/MergeTree/MarkRange.h @@ -1,9 +1,9 @@ #pragma once #include -#include #include #include +#include #include #include @@ -31,7 +31,7 @@ struct MarkRange bool operator<(const MarkRange & rhs) const; }; -struct MarkRanges : public std::deque> +struct MarkRanges : public boost::container::devector> { enum class SearchAlgorithm : uint8_t { @@ -40,7 +40,7 @@ struct MarkRanges : public std::deque>::deque; /// NOLINT(modernize-type-traits) + using boost::container::devector>::devector; /// NOLINT(modernize-type-traits) size_t getNumberOfMarks() const; bool isOneRangeForWholePart(size_t num_marks_in_part) const; diff --git a/src/Storages/MergeTree/MergeTreeLazilyReader.cpp b/src/Storages/MergeTree/MergeTreeLazilyReader.cpp index 20bcc397f888f..676eb3363a99d 100644 --- a/src/Storages/MergeTree/MergeTreeLazilyReader.cpp +++ b/src/Storages/MergeTree/MergeTreeLazilyReader.cpp @@ -169,7 +169,7 @@ void MergeTreeLazilyReader::readLazyColumns( ReadBufferFromFileBase::ProfileCallback{}); size_t idx = 0; - auto mark_range_iter = mark_ranges.begin(); + auto * mark_range_iter = mark_ranges.begin(); auto row_offset = row_offsets[idx].row_offset; size_t next_offset = row_offset - index_granularity.getMarkStartingRow(mark_range_iter->begin); size_t skipped_rows = next_offset; diff --git a/src/Storages/MergeTree/PatchParts/MergeTreePatchReader.cpp b/src/Storages/MergeTree/PatchParts/MergeTreePatchReader.cpp index fc55e60ccc283..29d5f7c1cb705 100644 --- a/src/Storages/MergeTree/PatchParts/MergeTreePatchReader.cpp +++ b/src/Storages/MergeTree/PatchParts/MergeTreePatchReader.cpp @@ -164,7 +164,7 @@ static void filterReadRanges(MarkRanges & all_ranges, const MarkRanges & read_ra { std::unordered_set read_ranges_set(read_ranges.begin(), read_ranges.end()); - for (auto it = all_ranges.begin(); it != all_ranges.end();) + for (auto * it = all_ranges.begin(); it != all_ranges.end();) { if (read_ranges_set.contains(*it)) it = all_ranges.erase(it); diff --git a/src/Storages/MergeTree/PatchParts/RangesInPatchParts.cpp b/src/Storages/MergeTree/PatchParts/RangesInPatchParts.cpp index 035a98b355454..f0a6d7091281d 100644 --- a/src/Storages/MergeTree/PatchParts/RangesInPatchParts.cpp +++ b/src/Storages/MergeTree/PatchParts/RangesInPatchParts.cpp @@ -227,8 +227,8 @@ MarkRanges RangesInPatchParts::getIntersectingRanges(const String & patch_name, for (const auto & range : ranges) { - auto left = std::lower_bound(patch_ranges.begin(), patch_ranges.end(), range.begin, [](const MarkRange & r, UInt64 value) { return r.end < value; }); - auto right = std::upper_bound(patch_ranges.begin(), patch_ranges.end(), range.end, [](UInt64 value, const MarkRange & r) { return value < r.begin; }); + const auto * left = std::lower_bound(patch_ranges.begin(), patch_ranges.end(), range.begin, [](const MarkRange & r, UInt64 value) { return r.end < value; }); + const auto * right = std::upper_bound(patch_ranges.begin(), patch_ranges.end(), range.end, [](UInt64 value, const MarkRange & r) { return value < r.begin; }); res.insert(left, right); }