aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralexvru <alexvru@ydb.tech>2023-01-26 21:00:57 +0300
committeralexvru <alexvru@ydb.tech>2023-01-26 21:00:57 +0300
commit2bd6cee3d1af049b40d3d21028ab9c10deb22f8c (patch)
treedd86dc1e385cc086efe1e84dfe9c987f6c7166c6
parent0996e5e1336dceacb4b56248a3ef421cec64ff4b (diff)
downloadydb-2bd6cee3d1af049b40d3d21028ab9c10deb22f8c.tar.gz
Fix assimilation barrier issue
-rw-r--r--ydb/core/blobstorage/ut_blobstorage/assimilation.cpp2
-rw-r--r--ydb/core/blobstorage/vdisk/query/assimilation.cpp14
2 files changed, 7 insertions, 9 deletions
diff --git a/ydb/core/blobstorage/ut_blobstorage/assimilation.cpp b/ydb/core/blobstorage/ut_blobstorage/assimilation.cpp
index c2514d3d665..2c4ef621a9e 100644
--- a/ydb/core/blobstorage/ut_blobstorage/assimilation.cpp
+++ b/ydb/core/blobstorage/ut_blobstorage/assimilation.cpp
@@ -4,7 +4,7 @@ Y_UNIT_TEST_SUITE(VDiskAssimilation) {
Y_UNIT_TEST(Test) {
TEnvironmentSetup env{{
.NodeCount = 8,
- .Erasure = TBlobStorageGroupType::Erasure4Plus2Block,
+ .Erasure = TBlobStorageGroupType::ErasureNone,
}};
auto& runtime = env.Runtime;
diff --git a/ydb/core/blobstorage/vdisk/query/assimilation.cpp b/ydb/core/blobstorage/vdisk/query/assimilation.cpp
index 07ef96c24d3..376cf139e83 100644
--- a/ydb/core/blobstorage/vdisk/query/assimilation.cpp
+++ b/ydb/core/blobstorage/vdisk/query/assimilation.cpp
@@ -133,15 +133,13 @@ namespace NKikimr {
const TMemRecBarrier& memRec = iter;
if (next.TabletId != key.TabletId || next.Channel != key.Channel) {
break;
+ } else if (memRec.Ingress.IsQuorum(Snap.HullCtx->IngressCache.Get())) {
+ auto *value = next.Hard ? pb->MutableHard() : pb->MutableSoft();
+ value->SetRecordGeneration(next.Gen);
+ value->SetPerGenerationCounter(next.GenCounter);
+ value->SetCollectGeneration(memRec.CollectGen);
+ value->SetCollectStep(memRec.CollectStep);
}
-
- auto *value = next.Hard ? pb->MutableHard() : pb->MutableSoft();
- value->SetRecordGeneration(next.Gen);
- value->SetPerGenerationCounter(next.GenCounter);
- // TODO(alexvru): should we obtain quorum here? it looks not, because as the GC command was issued, then
- // all the keep flags already have been set, so we can choose the latest issued barrier for the tablet
- value->SetCollectGeneration(memRec.CollectGen);
- value->SetCollectStep(memRec.CollectStep);
}
using T = NKikimrBlobStorage::TEvVAssimilateResult::TBarrier;