summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValery Mironov <[email protected]>2024-07-24 08:37:08 +0300
committerGitHub <[email protected]>2024-07-24 08:37:08 +0300
commitfa4c87c4d5ff04922ed8963c9165d05fbfad581a (patch)
treeb0c8e0f6a86139d7e3e9492f45142d784eb6388c
parent86bca725ec12a5cb34e61f25cf98a595a2fe5c8c (diff)
Fix merge artifact (#6997)
-rw-r--r--ydb/core/tx/schemeshard/schemeshard__operation_apply_build_index.cpp2
-rw-r--r--ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp10
-rw-r--r--ydb/core/tx/schemeshard/schemeshard_path_describer.cpp8
3 files changed, 14 insertions, 6 deletions
diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_apply_build_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_apply_build_index.cpp
index 44799b2e81e..e7ac9c79cc1 100644
--- a/ydb/core/tx/schemeshard/schemeshard__operation_apply_build_index.cpp
+++ b/ydb/core/tx/schemeshard/schemeshard__operation_apply_build_index.cpp
@@ -133,7 +133,7 @@ TVector<ISubOperation::TPtr> CancelBuildIndex(TOperationId nextId, const TTxTran
TPath index = table.Child(indexName);
auto tableIndexDropping = TransactionTemplate(table.PathString(), NKikimrSchemeOp::EOperationType::ESchemeOpDropTableIndex);
auto operation = tableIndexDropping.MutableDrop();
- operation->SetName(ToString(index.Base()->Name));
+ operation->SetName(index.Base()->Name);
result.push_back(CreateDropTableIndex(NextPartId(nextId, result), tableIndexDropping));
}
diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp
index 9a97bb9f5a0..92e6fb6d574 100644
--- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp
+++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp
@@ -530,9 +530,13 @@ public:
if (parent.Base()->IsTableIndex()) {
checks
.IsTableIndex()
- .IsInsideTableIndexPath()
- .IsUnderDeleting()
- .IsUnderTheSameOperation(OperationId.GetTxId()); //allow only as part of drop base table
+ .IsInsideTableIndexPath();
+ // Not tmp index impl tables can be dropped only as part of drop index
+ if (!NTableIndex::IsTmpImplTable(name)) {
+ checks
+ .IsUnderDeleting()
+ .IsUnderTheSameOperation(OperationId.GetTxId());
+ }
} else {
checks
.IsLikeDirectory()
diff --git a/ydb/core/tx/schemeshard/schemeshard_path_describer.cpp b/ydb/core/tx/schemeshard/schemeshard_path_describer.cpp
index 32a7abb489f..ef7b47e859a 100644
--- a/ydb/core/tx/schemeshard/schemeshard_path_describer.cpp
+++ b/ydb/core/tx/schemeshard/schemeshard_path_describer.cpp
@@ -1288,8 +1288,12 @@ void TSchemeShard::DescribeTableIndex(const TPathId& pathId, const TString& name
auto indexPath = *PathsById.FindPtr(pathId);
Y_ABORT_UNLESS(indexPath);
- const ui8 expectedIndexImplTableCount = indexInfo->Type == NKikimrSchemeOp::EIndexType::EIndexTypeGlobalVectorKmeansTree ? 2 : 1;
- Y_ABORT_UNLESS(indexPath->GetChildren().size() == expectedIndexImplTableCount);
+ if (indexInfo->Type == NKikimrSchemeOp::EIndexType::EIndexTypeGlobalVectorKmeansTree) {
+ // For vector index we have 4 impl tables on build stage and 2 impl tables when it's ready
+ Y_ABORT_UNLESS(indexPath->GetChildren().size() == 4 || indexPath->GetChildren().size() == 2);
+ } else {
+ Y_ABORT_UNLESS(indexPath->GetChildren().size() == 1);
+ }
ui64 dataSize = 0;
for (const auto& indexImplTablePathId : indexPath->GetChildren()) {