Skip to content

Commit fb0a451

Browse files
Merge 3a71fc5 into e62a642
2 parents e62a642 + 3a71fc5 commit fb0a451

File tree

3 files changed

+8
-10
lines changed

3 files changed

+8
-10
lines changed

ydb/core/tx/columnshard/engines/scheme/tiering/tier_info.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,15 @@ std::optional<TInstant> TTierInfo::ScalarToInstant(const std::shared_ptr<arrow::
1919
}
2020
}
2121

22-
TTiering::TTieringContext TTiering::GetTierToMove(const std::shared_ptr<arrow::Scalar>& max, const TInstant now) const {
22+
TTiering::TTieringContext TTiering::GetTierToMove(const std::shared_ptr<arrow::Scalar>& max, const TInstant now, const bool skipEviction) const {
2323
AFL_VERIFY(OrderedTiers.size());
2424
std::optional<TString> nextTierName;
2525
std::optional<TDuration> nextTierDuration;
2626
for (auto& tierRef : GetOrderedTiers()) {
2727
auto& tierInfo = tierRef.Get();
28+
if (skipEviction && tierInfo.GetName() != NTiering::NCommon::DeleteTierName) {
29+
continue;
30+
}
2831
auto mpiOpt = tierInfo.ScalarToInstant(max);
2932
Y_ABORT_UNLESS(mpiOpt);
3033
const TInstant maxTieringPortionInstant = *mpiOpt;

ydb/core/tx/columnshard/engines/scheme/tiering/tier_info.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ class TTiering {
149149
}
150150
};
151151

152-
TTieringContext GetTierToMove(const std::shared_ptr<arrow::Scalar>& max, const TInstant now) const;
152+
TTieringContext GetTierToMove(const std::shared_ptr<arrow::Scalar>& max, const TInstant now, const bool skipEviction) const;
153153

154154
const TTiersMap& GetTierByName() const {
155155
return TierByName;

ydb/core/tx/columnshard/engines/storage/actualizer/tiering/tiering.cpp

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ std::optional<TTieringActualizer::TFullActualizationInfo> TTieringActualizer::Bu
4343
max = it->second;
4444
}
4545
}
46-
auto tieringInfo = Tiering->GetTierToMove(max, now);
46+
const bool skipEviction = !NYDBTest::TControllers::GetColumnShardController()->CheckPortionForEvict(portion);
47+
auto tieringInfo = Tiering->GetTierToMove(max, now, skipEviction);
4748
AFL_TRACE(NKikimrServices::TX_COLUMNSHARD)("tiering_info", tieringInfo.DebugString());
4849
std::optional<i64> d;
4950
std::set<TString> storagesWrite;
@@ -149,13 +150,7 @@ void TTieringActualizer::DoExtractTasks(
149150
}
150151
bool limitEnriched = false;
151152
for (auto&& p : portions) {
152-
auto portion = externalContext.GetPortionVerified(p);
153-
if (!address.WriteIs(NBlobOperations::TGlobal::DefaultStorageId) && !address.WriteIs(NTiering::NCommon::DeleteTierName)) {
154-
if (!NYDBTest::TControllers::GetColumnShardController()->CheckPortionForEvict(portion)) {
155-
Counters.SkipEvictionForCompaction->Add(1);
156-
continue;
157-
}
158-
}
153+
const auto& portion = externalContext.GetPortionVerified(p);
159154
auto info = BuildActualizationInfo(*portion, tasksContext.GetActualInstant());
160155
AFL_VERIFY(info);
161156
auto portionScheme = portion->GetSchema(VersionedIndex);

0 commit comments

Comments
 (0)