diff --git a/ydb/core/tx/tiering/rule/manager.cpp b/ydb/core/tx/tiering/rule/manager.cpp index 0e543098a7ec..bdcfac875c64 100644 --- a/ydb/core/tx/tiering/rule/manager.cpp +++ b/ydb/core/tx/tiering/rule/manager.cpp @@ -30,16 +30,4 @@ NMetadata::NModifications::TOperationParsingResult TTieringRulesManager::DoBuild return result; } -NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus TTieringRulesManager::DoPrepare(NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, const NYql::TObjectSettingsImpl& /*settings*/, - const NMetadata::IClassBehaviour::TPtr& /*manager*/, NMetadata::NModifications::IOperationsManager::TInternalModificationContext& /*context*/) const { - return NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Prepare operations for TIERING_RULE objects are not supported"); -} - -NThreading::TFuture TTieringRulesManager::ExecutePrepared(const NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, - const ui32 /*nodeId*/, const NMetadata::IClassBehaviour::TPtr& /*manager*/, const IOperationsManager::TExternalModificationContext& /*context*/) const { - return NThreading::MakeFuture(NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Execution of prepare operations for TIERING_RULE objects is not supported")); -} - } diff --git a/ydb/core/tx/tiering/rule/manager.h b/ydb/core/tx/tiering/rule/manager.h index 45057cfa04ff..3268c90021c4 100644 --- a/ydb/core/tx/tiering/rule/manager.h +++ b/ydb/core/tx/tiering/rule/manager.h @@ -13,12 +13,6 @@ class TTieringRulesManager: public NMetadata::NModifications::TGenericOperations virtual NMetadata::NModifications::TOperationParsingResult DoBuildPatchFromSettings(const NYql::TObjectSettingsImpl& settings, TInternalModificationContext& context) const override; - - virtual IOperationsManager::TYqlConclusionStatus DoPrepare(NKqpProto::TKqpSchemeOperation& schemeOperation, const NYql::TObjectSettingsImpl& settings, - const NMetadata::IClassBehaviour::TPtr& manager, IOperationsManager::TInternalModificationContext& context) const override; - - virtual NThreading::TFuture ExecutePrepared(const NKqpProto::TKqpSchemeOperation& schemeOperation, - const ui32 nodeId, const NMetadata::IClassBehaviour::TPtr& manager, const IOperationsManager::TExternalModificationContext& context) const override; }; } diff --git a/ydb/core/tx/tiering/tier/manager.cpp b/ydb/core/tx/tiering/tier/manager.cpp index 7c657b3df15e..d9e9834f974f 100644 --- a/ydb/core/tx/tiering/tier/manager.cpp +++ b/ydb/core/tx/tiering/tier/manager.cpp @@ -67,16 +67,4 @@ void TTiersManager::DoPrepareObjectsBeforeModification(std::vector& TActivationContext::Register(new TTierPreparationActor(std::move(patchedObjects), controller, context)); } -NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus TTiersManager::DoPrepare(NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, const NYql::TObjectSettingsImpl& /*settings*/, - const NMetadata::IClassBehaviour::TPtr& /*manager*/, NMetadata::NModifications::IOperationsManager::TInternalModificationContext& /*context*/) const { - return NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Prepare operations for TIER objects are not supported"); -} - -NThreading::TFuture TTiersManager::ExecutePrepared(const NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, - const ui32 /*nodeId*/, const NMetadata::IClassBehaviour::TPtr& /*manager*/, const IOperationsManager::TExternalModificationContext& /*context*/) const { - return NThreading::MakeFuture(NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Execution of prepare operations for TIER objects is not supported")); -} - } diff --git a/ydb/core/tx/tiering/tier/manager.h b/ydb/core/tx/tiering/tier/manager.h index 547e06ef0011..ba777648139c 100644 --- a/ydb/core/tx/tiering/tier/manager.h +++ b/ydb/core/tx/tiering/tier/manager.h @@ -13,12 +13,6 @@ class TTiersManager: public NMetadata::NModifications::TGenericOperationsManager virtual NMetadata::NModifications::TOperationParsingResult DoBuildPatchFromSettings(const NYql::TObjectSettingsImpl& settings, TInternalModificationContext& context) const override; - - virtual IOperationsManager::TYqlConclusionStatus DoPrepare(NKqpProto::TKqpSchemeOperation& schemeOperation, const NYql::TObjectSettingsImpl& settings, - const NMetadata::IClassBehaviour::TPtr& manager, IOperationsManager::TInternalModificationContext& context) const override; - - virtual NThreading::TFuture ExecutePrepared(const NKqpProto::TKqpSchemeOperation& schemeOperation, - const ui32 nodeId, const NMetadata::IClassBehaviour::TPtr& manager, const IOperationsManager::TExternalModificationContext& context) const override; public: }; diff --git a/ydb/core/tx/tiering/ut/ut_tiers.cpp b/ydb/core/tx/tiering/ut/ut_tiers.cpp index 4bf015a08be3..40e45ecd04ab 100644 --- a/ydb/core/tx/tiering/ut/ut_tiers.cpp +++ b/ydb/core/tx/tiering/ut/ut_tiers.cpp @@ -395,19 +395,23 @@ Y_UNIT_TEST_SUITE(ColumnShardTiers) { } } - Y_UNIT_TEST(DSConfigs) { + void DSConfigsImpl(bool useQueryService) { TPortManager pm; ui32 grpcPort = pm.GetPort(); ui32 msgbPort = pm.GetPort(); + NKikimrConfig::TAppConfig appConfig; + appConfig.MutableTableServiceConfig()->SetEnablePreparedDdl(true); + Tests::TServerSettings serverSettings(msgbPort); serverSettings.Port = msgbPort; serverSettings.GrpcPort = grpcPort; serverSettings.SetDomainName("Root") .SetUseRealThreads(false) .SetEnableMetadataProvider(true) - .SetForceColumnTablesCompositeMarks(true); + .SetForceColumnTablesCompositeMarks(true) + .SetAppConfig(appConfig); Tests::TServer::TPtr server = new Tests::TServer(serverSettings); server->EnableGRpc(grpcPort); @@ -418,6 +422,8 @@ Y_UNIT_TEST_SUITE(ColumnShardTiers) { auto sender = runtime.AllocateEdgeActor(); server->SetupRootStoragePools(sender); TLocalHelper lHelper(*server); + lHelper.SetUseQueryService(useQueryService); + lHelper.CreateTestOlapTable("olapTable"); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_NOTICE); @@ -436,7 +442,7 @@ Y_UNIT_TEST_SUITE(ColumnShardTiers) { } lHelper.StartSchemaRequest("CREATE OBJECT tier2 (TYPE TIER) WITH tierConfig = `" + GetConfigProtoWithName("abc2") + "`"); - lHelper.StartSchemaRequest("CREATE OBJECT tiering1 (TYPE TIERING_RULE) " + lHelper.StartSchemaRequest("CREATE OBJECT IF NOT EXISTS tiering1 (TYPE TIERING_RULE) " "WITH (defaultColumn = timestamp, description = `" + ConfigTiering1Str + "`)"); lHelper.StartSchemaRequest("CREATE OBJECT tiering2 (TYPE TIERING_RULE) " "WITH (defaultColumn = timestamp, description = `" + ConfigTiering2Str + "` )", true, false); @@ -473,6 +479,15 @@ Y_UNIT_TEST_SUITE(ColumnShardTiers) { //runtime.SetLogPriority(NKikimrServices::TX_PROXY, NLog::PRI_TRACE); //runtime.SetLogPriority(NKikimrServices::KQP_YQL, NLog::PRI_TRACE); } + + Y_UNIT_TEST(DSConfigs) { + DSConfigsImpl(false); + } + + Y_UNIT_TEST(DSConfigsWithQueryServiceDdl) { + DSConfigsImpl(true); + } + //#define S3_TEST_USAGE #ifdef S3_TEST_USAGE const TString TierConfigProtoStr = diff --git a/ydb/services/ext_index/metadata/manager.cpp b/ydb/services/ext_index/metadata/manager.cpp index adebe4f71c14..9e7b70128782 100644 --- a/ydb/services/ext_index/metadata/manager.cpp +++ b/ydb/services/ext_index/metadata/manager.cpp @@ -90,16 +90,4 @@ NModifications::TOperationParsingResult TManager::DoBuildPatchFromSettings(const } } -NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus TManager::DoPrepare(NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, const NYql::TObjectSettingsImpl& /*settings*/, - const NMetadata::IClassBehaviour::TPtr& /*manager*/, NMetadata::NModifications::IOperationsManager::TInternalModificationContext& /*context*/) const { - return NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Prepare operations for CS_EXT_INDEX objects are not supported"); -} - -NThreading::TFuture TManager::ExecutePrepared(const NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, - const ui32 /*nodeId*/, const NMetadata::IClassBehaviour::TPtr& /*manager*/, const IOperationsManager::TExternalModificationContext& /*context*/) const { - return NThreading::MakeFuture(NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Execution of prepare operations for CS_EXT_INDEX objects is not supported")); -} - } diff --git a/ydb/services/ext_index/metadata/manager.h b/ydb/services/ext_index/metadata/manager.h index 70bf63575554..8a97b4e5614b 100644 --- a/ydb/services/ext_index/metadata/manager.h +++ b/ydb/services/ext_index/metadata/manager.h @@ -15,12 +15,6 @@ class TManager: public NModifications::TGenericOperationsManager { virtual NModifications::TOperationParsingResult DoBuildPatchFromSettings( const NYql::TObjectSettingsImpl& settings, TInternalModificationContext& context) const override; - virtual IOperationsManager::TYqlConclusionStatus DoPrepare(NKqpProto::TKqpSchemeOperation& schemeOperation, const NYql::TObjectSettingsImpl& settings, - const NMetadata::IClassBehaviour::TPtr& manager, IOperationsManager::TInternalModificationContext& context) const override; - - virtual NThreading::TFuture ExecutePrepared(const NKqpProto::TKqpSchemeOperation& schemeOperation, - const ui32 nodeId, const NMetadata::IClassBehaviour::TPtr& manager, const IOperationsManager::TExternalModificationContext& context) const override; - public: }; diff --git a/ydb/services/metadata/initializer/manager.cpp b/ydb/services/metadata/initializer/manager.cpp index 3d6a1c54da0d..0856618f2ebb 100644 --- a/ydb/services/metadata/initializer/manager.cpp +++ b/ydb/services/metadata/initializer/manager.cpp @@ -17,16 +17,4 @@ NModifications::TOperationParsingResult TManager::DoBuildPatchFromSettings( return result; } -NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus TManager::DoPrepare(NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, const NYql::TObjectSettingsImpl& /*settings*/, - const NMetadata::IClassBehaviour::TPtr& /*manager*/, NMetadata::NModifications::IOperationsManager::TInternalModificationContext& /*context*/) const { - return NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Prepare operations for INITIALIZATION objects are not supported"); -} - -NThreading::TFuture TManager::ExecutePrepared(const NKqpProto::TKqpSchemeOperation& /*schemeOperation*/, - const ui32 /*nodeId*/, const NMetadata::IClassBehaviour::TPtr& /*manager*/, const IOperationsManager::TExternalModificationContext& /*context*/) const { - return NThreading::MakeFuture(NMetadata::NModifications::IOperationsManager::TYqlConclusionStatus::Fail( - "Execution of prepare operations for INITIALIZATION objects is not supported")); -} - } diff --git a/ydb/services/metadata/initializer/manager.h b/ydb/services/metadata/initializer/manager.h index 3c4b04f783f2..036227b7b3cf 100644 --- a/ydb/services/metadata/initializer/manager.h +++ b/ydb/services/metadata/initializer/manager.h @@ -20,12 +20,6 @@ class TManager: public NModifications::TGenericOperationsManager ExecutePrepared(const NKqpProto::TKqpSchemeOperation& schemeOperation, - const ui32 nodeId, const NMetadata::IClassBehaviour::TPtr& manager, const IOperationsManager::TExternalModificationContext& context) const override; - public: }; diff --git a/ydb/services/metadata/secret/ut/ut_secret.cpp b/ydb/services/metadata/secret/ut/ut_secret.cpp index 7a5fc1cf6b0e..29799fb20c30 100644 --- a/ydb/services/metadata/secret/ut/ut_secret.cpp +++ b/ydb/services/metadata/secret/ut/ut_secret.cpp @@ -291,6 +291,7 @@ Y_UNIT_TEST_SUITE(Secret) { lHelper.StartSchemaRequest("ALTER OBJECT secret1 (TYPE SECRET) SET value = `abcde`"); lHelper.StartSchemaRequest("CREATE OBJECT `secret1:test@test1` (TYPE SECRET_ACCESS)"); lHelper.StartSchemaRequest("CREATE OBJECT `secret2:test@test1` (TYPE SECRET_ACCESS)", false); + lHelper.StartSchemaRequest("CREATE OBJECT IF NOT EXISTS `secret1:test@test1` (TYPE SECRET_ACCESS)"); lHelper.StartSchemaRequest("DROP OBJECT `secret1` (TYPE SECRET)", false); lHelper.StartDataRequest("SELECT * FROM `/Root/.metadata/secrets/values`", false); {