diff options
author | ijon <ijon@ydb.tech> | 2024-11-20 17:16:46 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-20 17:16:46 +0300 |
commit | 2dd1cacc02ad7af2087517e17bd26ee185857f87 (patch) | |
tree | 090a98602b421f0ade3b51d10a0e6ac893ad2769 | |
parent | c9a5f50f890cf5a37e508e7acb9f24c761dd636a (diff) | |
download | ydb-2dd1cacc02ad7af2087517e17bd26ee185857f87.tar.gz |
schemeshard: forward declare events in a core header for operations (#11655)
Switch `schemeshard_operation_part.h` to forward declarations of component events.
Move component specific header includes from `schemeshard_operation_part.h` to relevant suboperation modules.
Event definitions often use component specific types and definitions which require dragging along component specific headers. As a result, any schemeshard suboperation module (which have to include base header `schemeshard_operation_part.h`) transitively include headers from all components for all scheme suboperations. Which is a bit excessive.
Made possible by #10685.
This is part of "improve schemeshard operation build-time" effort (#10633).
53 files changed, 205 insertions, 140 deletions
diff --git a/ydb/core/persqueue/events/global.h b/ydb/core/persqueue/events/global.h index 639ebc7481..4d32789e20 100644 --- a/ydb/core/persqueue/events/global.h +++ b/ydb/core/persqueue/events/global.h @@ -271,7 +271,6 @@ namespace TEvPersQueue { }; using TEvProposeTransactionAttach = TEvDataShard::TEvProposeTransactionAttach; - using TEvProposeTransactionAttachResult = TEvDataShard::TEvProposeTransactionAttachResult; struct TEvReadingPartitionFinishedRequest : public TEventPB<TEvReadingPartitionFinishedRequest, NKikimrPQ::TEvReadingPartitionFinishedRequest, EvReadingPartitionFinished> { TEvReadingPartitionFinishedRequest() = default; diff --git a/ydb/core/persqueue/pq_impl.cpp b/ydb/core/persqueue/pq_impl.cpp index a357068868..94f32fa9e9 100644 --- a/ydb/core/persqueue/pq_impl.cpp +++ b/ydb/core/persqueue/pq_impl.cpp @@ -4569,7 +4569,7 @@ void TPersQueue::Handle(TEvPersQueue::TEvProposeTransactionAttach::TPtr &ev, con } } - ctx.Send(ev->Sender, new TEvPersQueue::TEvProposeTransactionAttachResult(TabletID(), txId, status), 0, ev->Cookie); + ctx.Send(ev->Sender, new TEvDataShard::TEvProposeTransactionAttachResult(TabletID(), txId, status), 0, ev->Cookie); } void TPersQueue::Handle(TEvPQ::TEvCheckPartitionStatusRequest::TPtr& ev, const TActorContext&) diff --git a/ydb/core/tx/schemeshard/olap/bg_tasks/transactions/tasks_list.h b/ydb/core/tx/schemeshard/olap/bg_tasks/transactions/tasks_list.h index e179732b48..c4336f2282 100644 --- a/ydb/core/tx/schemeshard/olap/bg_tasks/transactions/tasks_list.h +++ b/ydb/core/tx/schemeshard/olap/bg_tasks/transactions/tasks_list.h @@ -23,4 +23,4 @@ public: virtual void Complete(const TActorContext&) override; }; -}
\ No newline at end of file +} diff --git a/ydb/core/tx/schemeshard/schemeshard__operation.cpp b/ydb/core/tx/schemeshard/schemeshard__operation.cpp index 2d7c65dff3..0c23626fcb 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation.cpp @@ -1,4 +1,12 @@ -#include "schemeshard__operation.h" +#include <util/generic/algorithm.h> + +#include <ydb/library/protobuf_printer/security_printer.h> + +#include <ydb/core/tablet/tablet_exception.h> +#include <ydb/core/tablet_flat/flat_cxx_database.h> +#include <ydb/core/tablet_flat/tablet_flat_executor.h> + +#include "schemeshard__operation_part.h" #include "schemeshard__dispatch_op.h" #include "schemeshard__operation_db_changes.h" @@ -8,13 +16,9 @@ #include "schemeshard_audit_log.h" #include "schemeshard_impl.h" -#include <ydb/core/tablet/tablet_exception.h> -#include <ydb/core/tablet_flat/flat_cxx_database.h> -#include <ydb/core/tablet_flat/tablet_flat_executor.h> - -#include <ydb/library/protobuf_printer/security_printer.h> +#include <ydb/core/tx/schemeshard/generated/dispatch_op.h> -#include <util/generic/algorithm.h> +#include "schemeshard__operation.h" namespace NKikimr::NSchemeShard { @@ -556,9 +560,9 @@ void OutOfScopeEventHandler<TEvDataShard::TEvSchemaChanged>(const TEvDataShard:: template <class TEvType> struct TTxTypeFrom; -#define DefineTxTypeFromSpecialization(TEvType, TxTypeValue) \ +#define DefineTxTypeFromSpecialization(NS, TEvType, TxTypeValue) \ template <> \ - struct TTxTypeFrom<TEvType> { \ + struct TTxTypeFrom<::NKikimr::NS::TEvType> { \ static constexpr TTxType TxType = TxTypeValue; \ }; @@ -745,8 +749,8 @@ NTabletFlatExecutor::ITransaction* TSchemeShard::CreateTxOperationReply(TOperati return new TTxOperationReply<TEvType>(this, id, ev); } -#define DefineCreateTxOperationReplyFunc(TEvType, ...) \ - template NTabletFlatExecutor::ITransaction* TSchemeShard::CreateTxOperationReply(TOperationId id, TEvType::TPtr& ev); +#define DefineCreateTxOperationReplyFunc(NS, TEvType, ...) \ + template NTabletFlatExecutor::ITransaction* TSchemeShard::CreateTxOperationReply(TOperationId id, ::NKikimr::NS::TEvType ## __HandlePtr& ev); SCHEMESHARD_INCOMING_EVENTS(DefineCreateTxOperationReplyFunc) #undef DefineCreateTxOperationReplyFunc diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_bsv.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_bsv.cpp index 7605552eff..ddd171b864 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_bsv.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_bsv.cpp @@ -5,6 +5,7 @@ #include <ydb/core/base/subdomain.h> #include <ydb/core/persqueue/config/config.h> #include <ydb/core/mind/hive/hive.h> +#include <ydb/core/blockstore/core/blockstore.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_extsubdomain.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_extsubdomain.cpp index 6b330b329d..59f0f11a2f 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_extsubdomain.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_extsubdomain.cpp @@ -1,9 +1,10 @@ #include "schemeshard__operation_part.h" -#include "schemeshard__operation_common_subdomain.h" -#include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include "schemeshard__operation_common.h" +#include "schemeshard__operation_common_subdomain.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/base/hive.h> #define LOG_D(stream) LOG_DEBUG_S(context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, "[" << context.SS->TabletID() << "] " << stream) diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_fs.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_fs.cpp index 74449d83db..cf298873d3 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_fs.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_fs.cpp @@ -4,6 +4,7 @@ #include <ydb/core/base/subdomain.h> #include <ydb/core/mind/hive/hive.h> +#include <ydb/core/filestore/core/filestore.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_index.cpp index 0415c18c18..1fef6726a4 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_index.cpp @@ -1,5 +1,6 @@ #include "schemeshard__operation_part.h" #include "schemeshard__operation_common.h" +#include "schemeshard_impl.h" namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_kesus.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_kesus.cpp index e1df77d80f..46973beead 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_kesus.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_kesus.cpp @@ -4,6 +4,7 @@ #include <ydb/core/base/subdomain.h> #include <ydb/core/persqueue/config/config.h> +#include <ydb/core/kesus/tablet/events.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_replication.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_replication.cpp index 0f675261bc..55aabcbcda 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_replication.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_replication.cpp @@ -2,6 +2,7 @@ #include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/tx/replication/controller/public_events.h> #define LOG_D(stream) LOG_DEBUG_S (context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, "[" << context.SS->TabletID() << "] " << stream) diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_sequence.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_sequence.cpp index 49ca314a82..1d5ce7e9b3 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_sequence.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_sequence.cpp @@ -3,6 +3,8 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> +#include <ydb/core/tx/sequenceshard/public/events.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_solomon.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_solomon.cpp index 17542f164a..a89848d373 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_solomon.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_solomon.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/persqueue/config/config.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_alter_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_alter_table.cpp index 01b28e3530..53d91b4e5f 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_alter_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_alter_table.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/base/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_backup_restore_common.h b/ydb/core/tx/schemeshard/schemeshard__operation_backup_restore_common.h index 42667ec265..38f75538e7 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_backup_restore_common.h +++ b/ydb/core/tx/schemeshard/schemeshard__operation_backup_restore_common.h @@ -6,6 +6,7 @@ #include "schemeshard_types.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/metering/metering.h> #include <util/generic/utility.h> diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_blob_depot.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_blob_depot.cpp index 3a21e84c3d..3eb64d2263 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_blob_depot.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_blob_depot.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/protos/blob_depot_config.pb.h> +#include <ydb/core/blob_depot/events.h> namespace NKikimr::NSchemeShard { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_common.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_common.cpp index e273bce3e8..f7e892a5d8 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_common.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_common.cpp @@ -1,5 +1,17 @@ #include "schemeshard__operation_common.h" +#include <ydb/core/blob_depot/events.h> +#include <ydb/core/blockstore/core/blockstore.h> +#include <ydb/core/filestore/core/filestore.h> +#include <ydb/core/kesus/tablet/events.h> +#include <ydb/core/mind/hive/hive.h> +#include <ydb/core/persqueue/events/global.h> +#include <ydb/core/tx/columnshard/columnshard.h> +#include <ydb/core/tx/datashard/datashard.h> +#include <ydb/core/tx/replication/controller/public_events.h> +#include <ydb/core/tx/sequenceshard/public/events.h> + + namespace NKikimr { namespace NSchemeShard { @@ -1073,8 +1085,8 @@ bool CollectProposeTransactionResults(const TOperationId& operationId, TSet<ui32> AllIncomingEvents() { TSet<ui32> result; -#define AddToList(TEvType, TxType) \ - result.insert(TEvType::EventType); +#define AddToList(NS, TEvType, ...) \ + result.insert(::NKikimr::NS::TEvType::EventType); SCHEMESHARD_INCOMING_EVENTS(AddToList) #undef AddToList diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_common.h b/ydb/core/tx/schemeshard/schemeshard__operation_common.h index 7c8372a878..1fe5848323 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_common.h +++ b/ydb/core/tx/schemeshard/schemeshard__operation_common.h @@ -3,10 +3,13 @@ #include "schemeshard__operation_part.h" #include "schemeshard_impl.h" -#include <ydb/core/base/subdomain.h> -#include <ydb/core/persqueue/writer/source_id_encoding.h> -#include <ydb/core/tx/columnshard/columnshard.h> -#include <ydb/core/tx/tx_processing.h> +#include "schemeshard_private.h" + + +namespace NKikimr::TEvHive { + struct TEvCreateTablet; + struct TEvAdoptTablet; +} namespace NKikimr::NSchemeShard { @@ -26,9 +29,9 @@ void AbortUnsafeDropOperation(const TOperationId& operationId, const TTxId& txId namespace NTableState { -bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvDataShard::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context); -bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvColumnShard::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context); -bool CollectSchemaChanged(const TOperationId& operationId, const TEvDataShard::TEvSchemaChanged::TPtr& ev, TOperationContext& context); +bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvDataShard::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context); +bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvColumnShard::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context); +bool CollectSchemaChanged(const TOperationId& operationId, const TEvDataShard::TEvSchemaChanged__HandlePtr& ev, TOperationContext& context); void SendSchemaChangedNotificationAck(const TOperationId& operationId, TActorId ackTo, TShardIdx shardIdx, TOperationContext& context); void AckAllSchemaChanges(const TOperationId& operationId, TTxState& txState, TOperationContext& context); @@ -56,7 +59,7 @@ public: TProposedWaitParts(TOperationId id, TTxState::ETxState nextState = TTxState::Done); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvDataShard::TEvSchemaChanged::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvDataShard::TEvSchemaChanged__HandlePtr& ev, TOperationContext& context) override; }; } // namespace NTableState @@ -75,8 +78,8 @@ public: explicit TCreateParts(const TOperationId& id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvHive::TEvCreateTabletReply::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvHive::TEvAdoptTabletReply::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvHive::TEvCreateTabletReply__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvHive::TEvAdoptTabletReply__HandlePtr& ev, TOperationContext& context) override; }; class TDeleteParts: public TSubOperationState { @@ -121,7 +124,7 @@ public: namespace NPQState { -bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvPersQueue::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context); +bool CollectProposeTransactionResults(const TOperationId& operationId, const TEvPersQueue::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context); class TConfigureParts: public TSubOperationState { private: @@ -137,8 +140,8 @@ public: TConfigureParts(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvPersQueue::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvPersQueue::TEvUpdateConfigResponse::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPersQueue::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPersQueue::TEvUpdateConfigResponse__HandlePtr& ev, TOperationContext& context) override; }; class TPropose: public TSubOperationState { @@ -155,9 +158,9 @@ public: TPropose(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvPersQueue::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvPrivate::TEvOperationPlan::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPersQueue::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvDataShard::TEvProposeTransactionAttachResult__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPrivate::TEvOperationPlan__HandlePtr& ev, TOperationContext& context) override; private: bool CanPersistState(const TTxState& txState, @@ -192,7 +195,7 @@ public: TConfigureParts(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvBlockStore::TEvUpdateVolumeConfigResponse::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvBlockStore::TEvUpdateVolumeConfigResponse__HandlePtr& ev, TOperationContext& context) override; }; class TPropose: public TSubOperationState { @@ -209,7 +212,7 @@ public: TPropose(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvPrivate::TEvOperationPlan::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPrivate::TEvOperationPlan__HandlePtr& ev, TOperationContext& context) override; }; } // NBSVState @@ -230,7 +233,7 @@ public: explicit TConfigurePartsAtTable(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvDataShard::TEvProposeTransactionResult::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvDataShard::TEvProposeTransactionResult__HandlePtr& ev, TOperationContext& context) override; private: const TOperationId OperationId; @@ -247,8 +250,8 @@ public: explicit TProposeAtTable(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvPrivate::TEvOperationPlan::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvDataShard::TEvSchemaChanged::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPrivate::TEvOperationPlan__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvDataShard::TEvSchemaChanged__HandlePtr& ev, TOperationContext& context) override; protected: const TOperationId OperationId; @@ -258,7 +261,7 @@ class TProposeAtTableDropSnapshot: public TProposeAtTable { public: using TProposeAtTable::TProposeAtTable; - bool HandleReply(TEvPrivate::TEvOperationPlan::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPrivate::TEvOperationPlan__HandlePtr& ev, TOperationContext& context) override; }; // TProposeAtTableDropSnapshot } // NCdcStreamState diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_common_pq.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_common_pq.cpp index 004a9af3e1..27f2f9a35d 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_common_pq.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_common_pq.cpp @@ -269,7 +269,7 @@ bool CollectPQConfigChanged(const TOperationId& operationId, } bool CollectPQConfigChanged(const TOperationId& operationId, - const TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& ev, + const TEvDataShard::TEvProposeTransactionAttachResult::TPtr& ev, TOperationContext& context) { Y_ABORT_UNLESS(context.SS->FindTx(operationId)); @@ -307,7 +307,7 @@ bool CollectPQConfigChanged(const TOperationId& operationId, txState.ShardsInProgress.erase(shardIdx); LOG_DEBUG_S(context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, - "CollectPQConfigChanged accept TEvPersQueue::TEvProposeTransactionAttachResult" + "CollectPQConfigChanged accept TEvDataShard::TEvProposeTransactionAttachResult" << ", operationId: " << operationId << ", shardIdx: " << shardIdx << ", shard: " << shardId @@ -631,7 +631,7 @@ bool TPropose::HandleReply(TEvPersQueue::TEvProposeTransactionResult::TPtr& ev, return TryPersistState(context); } -bool TPropose::HandleReply(TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& ev, TOperationContext& context) +bool TPropose::HandleReply(TEvDataShard::TEvProposeTransactionAttachResult::TPtr& ev, TOperationContext& context) { const auto ssId = context.SS->SelfTabletId(); const auto& evRecord = ev->Get()->Record; diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.cpp index 7166bb69c2..f7a2261ddf 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.cpp @@ -1,4 +1,5 @@ #include "schemeshard__operation_part.h" +#include "schemeshard_impl.h" #include "schemeshard__operation_common_subdomain.h" #include <ydb/core/base/hive.h> diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.h b/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.h index 6afcde46dc..bd59f469ce 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.h +++ b/ydb/core/tx/schemeshard/schemeshard__operation_common_subdomain.h @@ -1,6 +1,5 @@ #pragma once -#include "schemeshard_impl.h" #include "schemeshard__operation_part.h" namespace NKikimr::NSchemeShard { @@ -62,8 +61,8 @@ public: TConfigureParts(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvSchemeShard::TEvInitTenantSchemeShardResult::TPtr& ev, TOperationContext& context) override; - bool HandleReply(TEvSubDomain::TEvConfigureStatus::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvSchemeShard::TEvInitTenantSchemeShardResult__HandlePtr& ev, TOperationContext& context) override; + bool HandleReply(TEvSubDomain::TEvConfigureStatus__HandlePtr& ev, TOperationContext& context) override; }; class TPropose: public TSubOperationState { @@ -80,7 +79,7 @@ public: TPropose(TOperationId id); bool ProgressState(TOperationContext& context) override; - bool HandleReply(TEvPrivate::TEvOperationPlan::TPtr& ev, TOperationContext& context) override; + bool HandleReply(TEvPrivate::TEvOperationPlan__HandlePtr& ev, TOperationContext& context) override; }; } // namespace NSubDomainState diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_copy_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_copy_table.cpp index 41e9a5570a..dd2c2f6095 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_copy_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_copy_table.cpp @@ -4,6 +4,7 @@ #include "schemeshard_tx_infly.h" #include "schemeshard_cdc_stream_common.h" +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/base/subdomain.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_extsubdomain.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_extsubdomain.cpp index 710f470917..ba18c6324b 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_extsubdomain.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_extsubdomain.cpp @@ -1,7 +1,7 @@ #include "schemeshard__operation_part.h" -#include "schemeshard__operation_common_subdomain.h" -#include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include "schemeshard__operation_common.h" +#include "schemeshard__operation_common_subdomain.h" #include <ydb/core/base/subdomain.h> diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_fs.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_fs.cpp index 0466c5def9..ca3ed44c49 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_fs.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_fs.cpp @@ -4,6 +4,7 @@ #include <ydb/core/base/subdomain.h> #include <ydb/core/mind/hive/hive.h> +#include <ydb/core/filestore/core/filestore.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_index.cpp index 3e37d40868..3e65e44d8b 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_index.cpp @@ -1,5 +1,6 @@ #include "schemeshard__operation_part.h" #include "schemeshard__operation_common.h" +#include "schemeshard_impl.h" namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_kesus.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_kesus.cpp index bbb014a954..089a6d84a4 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_kesus.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_kesus.cpp @@ -3,7 +3,9 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/persqueue/config/config.h> +#include <ydb/core/kesus/tablet/events.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_replication.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_replication.cpp index a301a81130..75b03b39be 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_replication.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_replication.cpp @@ -2,6 +2,7 @@ #include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/tx/replication/controller/public_events.h> #define LOG_D(stream) LOG_DEBUG_S (context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, "[" << context.SS->TabletID() << "] " << stream) diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_rtmr.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_rtmr.cpp index 67077be223..6d12ec60ac 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_rtmr.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_rtmr.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_sequence.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_sequence.cpp index 71ff2200da..8f1b0c73dc 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_sequence.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_sequence.cpp @@ -2,8 +2,8 @@ #include "schemeshard__operation_common.h" #include "schemeshard_impl.h" -#include <ydb/core/tx/sequenceshard/public/events.h> #include <ydb/core/mind/hive/hive.h> +#include <ydb/core/tx/sequenceshard/public/events.h> namespace NKikimr::NSchemeShard { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_solomon.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_solomon.cpp index b7e7bcaf72..27a21d2179 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_solomon.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_solomon.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/persqueue/config/config.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_create_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_create_table.cpp index 48b1b31eb1..a95a3170a1 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_create_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_create_table.cpp @@ -6,6 +6,7 @@ #include <ydb/core/protos/datashard_config.pb.h> #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_db_changes.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_db_changes.cpp index 09c5a7837c..2c1cc46c66 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_db_changes.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_db_changes.cpp @@ -1,7 +1,6 @@ -#include "schemeshard__operation_db_changes.h" #include "schemeshard_impl.h" -#include <ydb/core/tx/tx_processing.h> +#include "schemeshard__operation_db_changes.h" namespace NKikimr::NSchemeShard { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_bsv.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_bsv.cpp index d7857249d6..849cc9dbfa 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_bsv.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_bsv.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/blockstore/core/blockstore.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_extsubdomain.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_extsubdomain.cpp index 5ab01040d4..d23a3e46f8 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_extsubdomain.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_extsubdomain.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/base/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_fs.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_fs.cpp index 46dccead1b..4b662fb4c2 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_fs.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_fs.cpp @@ -4,6 +4,7 @@ #include <ydb/core/base/subdomain.h> #include <ydb/core/mind/hive/hive.h> +#include <ydb/core/filestore/core/filestore.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_indexed_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_indexed_table.cpp index b2757a2241..b9ba3e115f 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_indexed_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_indexed_table.cpp @@ -5,6 +5,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/path.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/base/table_vector_index.h> #include <ydb/core/protos/flat_tx_scheme.pb.h> #include <ydb/core/protos/flat_scheme_op.pb.h> diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_kesus.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_kesus.cpp index 2e23823c51..e5acf92fb0 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_kesus.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_kesus.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/kesus/tablet/events.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_pq.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_pq.cpp index 5e4f9ca671..99717cd047 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_pq.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_pq.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/persqueue/events/global.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp index 83064e8d57..2fbca175e2 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_drop_table.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_finalize_build_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_finalize_build_index.cpp index df9e154bf6..8ced0e4edd 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_finalize_build_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_finalize_build_index.cpp @@ -5,6 +5,7 @@ #include <ydb/core/protos/flat_scheme_op.pb.h> #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_initiate_build_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_initiate_build_index.cpp index a347d5841b..3b3c3a6d21 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_initiate_build_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_initiate_build_index.cpp @@ -5,6 +5,7 @@ #include <ydb/core/protos/flat_scheme_op.pb.h> #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_move_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_move_index.cpp index deccac6567..1ec4e5d88b 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_move_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_move_index.cpp @@ -5,6 +5,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/path.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/protos/flat_tx_scheme.pb.h> #include <ydb/core/protos/flat_scheme_op.pb.h> diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_move_table.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_move_table.cpp index 040d90e58f..1fced30047 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_move_table.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_move_table.cpp @@ -2,6 +2,8 @@ #include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include <ydb/core/mind/hive/hive.h> + namespace { using namespace NKikimr; diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_move_table_index.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_move_table_index.cpp index 3b231e9cd0..b4f858bacd 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_move_table_index.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_move_table_index.cpp @@ -2,6 +2,8 @@ #include "schemeshard__operation_common.h" #include "schemeshard_impl.h" +#include <ydb/core/mind/hive/hive.h> + namespace { using namespace NKikimr; diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_part.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_part.cpp index 12300b20d6..ff19b5f7a6 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_part.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_part.cpp @@ -2,6 +2,18 @@ #include "schemeshard_impl.h" #include "schemeshard_path.h" +#include <ydb/core/base/hive.h> +#include <ydb/core/kesus/tablet/events.h> +#include <ydb/core/persqueue/events/global.h> +#include <ydb/core/tx/datashard/datashard.h> +#include <ydb/core/tx/columnshard/columnshard.h> +#include <ydb/core/tx/replication/controller/public_events.h> +#include <ydb/core/tx/sequenceshard/public/events.h> +#include <ydb/core/tx/tx_processing.h> +#include <ydb/core/blob_depot/events.h> +#include <ydb/core/blockstore/core/blockstore.h> +#include <ydb/core/filestore/core/filestore.h> + namespace NKikimr::NSchemeShard { template <typename T> @@ -57,8 +69,8 @@ TString ISubOperationState::DebugReply(const TEvPtr& ev) { } -#define DefineDebugReply(TEvType, ...) \ - template TString ISubOperationState::DebugReply(const TEvType::TPtr& ev); +#define DefineDebugReply(NS, TEvType, ...) \ + template TString ISubOperationState::DebugReply(const ::NKikimr::NS::TEvType ## __HandlePtr& ev); SCHEMESHARD_INCOMING_EVENTS(DefineDebugReply) #undef DefineDebugReply @@ -70,15 +82,15 @@ static TString LogMessage(const TString& ev, TOperationContext& context, bool ig << ", ev# " << ev; } -#define DefaultHandleReply(TEvType, ...) \ - bool ISubOperationState::HandleReply(TEvType::TPtr& ev, TOperationContext& context) { \ +#define DefaultHandleReply(NS, TEvType, ...) \ + bool ISubOperationState::HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context) { \ const auto msg = LogMessage(DebugReply(ev), context, false); \ LOG_CRIT_S(context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, msg); \ Y_FAIL_S(msg); \ } \ \ - bool TSubOperationState::HandleReply(TEvType::TPtr& ev, TOperationContext& context) { \ - const bool ignore = MsgToIgnore.contains(TEvType::EventType); \ + bool TSubOperationState::HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context) { \ + const bool ignore = MsgToIgnore.contains(NS::TEvType::EventType); \ const auto msg = LogMessage(DebugReply(ev), context, ignore); \ if (ignore) { \ LOG_INFO_S(context.Ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, msg); \ @@ -88,7 +100,7 @@ static TString LogMessage(const TString& ev, TOperationContext& context, bool ig Y_FAIL_S(msg); \ } \ \ - bool TSubOperation::HandleReply(TEvType::TPtr& ev, TOperationContext& context) { \ + bool TSubOperation::HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context) { \ return Progress(context, &ISubOperationState::HandleReply, ev); \ } diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_part.h b/ydb/core/tx/schemeshard/schemeshard__operation_part.h index 4b5cfe312e..25cb768147 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_part.h +++ b/ydb/core/tx/schemeshard/schemeshard__operation_part.h @@ -1,83 +1,83 @@ #pragma once -#include "schemeshard.h" -#include "schemeshard_private.h" +#include <util/generic/string.h> +#include <util/generic/ptr.h> +#include <util/generic/set.h> + +#include <ydb/library/actors/core/event.h> // for TEventHandler + #include "schemeshard_tx_infly.h" #include "schemeshard_types.h" #include "schemeshard__operation_side_effects.h" #include "schemeshard__operation_memory_changes.h" #include "schemeshard__operation_db_changes.h" -#include <ydb/core/base/hive.h> -#include <ydb/core/kesus/tablet/events.h> -#include <ydb/core/persqueue/events/global.h> -#include <ydb/core/tx/datashard/datashard.h> -#include <ydb/core/tx/columnshard/columnshard.h> -#include <ydb/core/tx/replication/controller/public_events.h> -#include <ydb/core/tx/sequenceshard/public/events.h> -#include <ydb/core/tx/tx_processing.h> -#include <ydb/core/blob_depot/events.h> - -#include <ydb/core/blockstore/core/blockstore.h> -#include <ydb/core/filestore/core/filestore.h> - -#include <util/generic/ptr.h> -#include <util/generic/set.h> #define SCHEMESHARD_INCOMING_EVENTS(action) \ - action(TEvHive::TEvCreateTabletReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ - action(TEvHive::TEvAdoptTabletReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ - action(TEvHive::TEvDeleteTabletReply, NSchemeShard::TXTYPE_FREE_TABLET_RESULT) \ - action(TEvHive::TEvDeleteOwnerTabletsReply, NSchemeShard::TXTYPE_FREE_OWNER_TABLETS_RESULT)\ - action(TEvHive::TEvUpdateTabletsObjectReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ - action(TEvHive::TEvUpdateDomainReply, NSchemeShard::TXTYPE_UPDATE_DOMAIN_REPLY) \ + action(TEvHive, TEvCreateTabletReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ + action(TEvHive, TEvAdoptTabletReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ + action(TEvHive, TEvDeleteTabletReply, NSchemeShard::TXTYPE_FREE_TABLET_RESULT) \ + action(TEvHive, TEvDeleteOwnerTabletsReply, NSchemeShard::TXTYPE_FREE_OWNER_TABLETS_RESULT) \ + action(TEvHive, TEvUpdateTabletsObjectReply, NSchemeShard::TXTYPE_CREATE_TABLET_REPLY) \ + action(TEvHive, TEvUpdateDomainReply, NSchemeShard::TXTYPE_UPDATE_DOMAIN_REPLY) \ \ - action(TEvDataShard::TEvProposeTransactionResult, NSchemeShard::TXTYPE_DATASHARD_PROPOSE_RESULT) \ - action(TEvDataShard::TEvSchemaChanged, NSchemeShard::TXTYPE_DATASHARD_SCHEMA_CHANGED) \ - action(TEvDataShard::TEvStateChanged, NSchemeShard::TXTYPE_DATASHARD_STATE_RESULT) \ - action(TEvDataShard::TEvInitSplitMergeDestinationAck, NSchemeShard::TXTYPE_INIT_SPLIT_DST_ACK) \ - action(TEvDataShard::TEvSplitAck, NSchemeShard::TXTYPE_SPLIT_ACK) \ - action(TEvDataShard::TEvSplitPartitioningChangedAck, NSchemeShard::TXTYPE_SPLIT_PARTITIONING_CHANGED_DST_ACK) \ + action(TEvDataShard, TEvProposeTransactionResult, NSchemeShard::TXTYPE_DATASHARD_PROPOSE_RESULT) \ + action(TEvDataShard, TEvSchemaChanged, NSchemeShard::TXTYPE_DATASHARD_SCHEMA_CHANGED) \ + action(TEvDataShard, TEvStateChanged, NSchemeShard::TXTYPE_DATASHARD_STATE_RESULT) \ + action(TEvDataShard, TEvInitSplitMergeDestinationAck, NSchemeShard::TXTYPE_INIT_SPLIT_DST_ACK) \ + action(TEvDataShard, TEvSplitAck, NSchemeShard::TXTYPE_SPLIT_ACK) \ + action(TEvDataShard, TEvSplitPartitioningChangedAck, NSchemeShard::TXTYPE_SPLIT_PARTITIONING_CHANGED_DST_ACK) \ \ - action(TEvColumnShard::TEvProposeTransactionResult, NSchemeShard::TXTYPE_COLUMNSHARD_PROPOSE_RESULT) \ - action(TEvColumnShard::TEvNotifyTxCompletionResult, NSchemeShard::TXTYPE_COLUMNSHARD_NOTIFY_TX_COMPLETION_RESULT) \ + action(TEvColumnShard, TEvProposeTransactionResult, NSchemeShard::TXTYPE_COLUMNSHARD_PROPOSE_RESULT) \ + action(TEvColumnShard, TEvNotifyTxCompletionResult, NSchemeShard::TXTYPE_COLUMNSHARD_NOTIFY_TX_COMPLETION_RESULT) \ \ - action(NSequenceShard::TEvSequenceShard::TEvCreateSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_CREATE_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvDropSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_DROP_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvUpdateSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_UPDATE_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvFreezeSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_FREEZE_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvRestoreSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_RESTORE_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvRedirectSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_REDIRECT_SEQUENCE_RESULT) \ - action(NSequenceShard::TEvSequenceShard::TEvGetSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_GET_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvCreateSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_CREATE_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvDropSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_DROP_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvUpdateSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_UPDATE_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvFreezeSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_FREEZE_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvRestoreSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_RESTORE_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvRedirectSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_REDIRECT_SEQUENCE_RESULT) \ + action(NSequenceShard::TEvSequenceShard, TEvGetSequenceResult, NSchemeShard::TXTYPE_SEQUENCESHARD_GET_SEQUENCE_RESULT) \ \ - action(NReplication::TEvController::TEvCreateReplicationResult, NSchemeShard::TXTYPE_CREATE_REPLICATION_RESULT) \ - action(NReplication::TEvController::TEvAlterReplicationResult, NSchemeShard::TXTYPE_ALTER_REPLICATION_RESULT) \ - action(NReplication::TEvController::TEvDropReplicationResult, NSchemeShard::TXTYPE_DROP_REPLICATION_RESULT) \ + action(NReplication::TEvController, TEvCreateReplicationResult, NSchemeShard::TXTYPE_CREATE_REPLICATION_RESULT) \ + action(NReplication::TEvController, TEvAlterReplicationResult, NSchemeShard::TXTYPE_ALTER_REPLICATION_RESULT) \ + action(NReplication::TEvController, TEvDropReplicationResult, NSchemeShard::TXTYPE_DROP_REPLICATION_RESULT) \ \ - action(TEvSubDomain::TEvConfigureStatus, NSchemeShard::TXTYPE_SUBDOMAIN_CONFIGURE_RESULT) \ + action(TEvSubDomain, TEvConfigureStatus, NSchemeShard::TXTYPE_SUBDOMAIN_CONFIGURE_RESULT) \ \ - action(TEvSchemeShard::TEvInitTenantSchemeShardResult, NSchemeShard::TXTYPE_SUBDOMAIN_CONFIGURE_RESULT) \ - action(TEvSchemeShard::TEvMigrateSchemeShardResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvSchemeShard::TEvPublishTenantAsReadOnlyResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvPrivate::TEvCommitTenantUpdate, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvPrivate::TEvUndoTenantUpdate, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvSchemeShard::TEvPublishTenantResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvSchemeShard::TEvRewriteOwnerResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ - action(TEvDataShard::TEvMigrateSchemeShardResponse, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvSchemeShard, TEvInitTenantSchemeShardResult, NSchemeShard::TXTYPE_SUBDOMAIN_CONFIGURE_RESULT) \ + action(NSchemeShard::TEvSchemeShard, TEvMigrateSchemeShardResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvSchemeShard, TEvPublishTenantAsReadOnlyResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvPrivate, TEvCommitTenantUpdate, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvPrivate, TEvUndoTenantUpdate, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvSchemeShard, TEvPublishTenantResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(NSchemeShard::TEvSchemeShard, TEvRewriteOwnerResult, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ + action(TEvDataShard, TEvMigrateSchemeShardResponse, NSchemeShard::TXTYPE_SUBDOMAIN_MIGRATE_RESULT) \ \ - action(TEvBlockStore::TEvUpdateVolumeConfigResponse, NSchemeShard::TXTYPE_BLOCKSTORE_CONFIG_RESULT) \ - action(TEvFileStore::TEvUpdateConfigResponse, NSchemeShard::TXTYPE_FILESTORE_CONFIG_RESULT) \ - action(NKesus::TEvKesus::TEvSetConfigResult, NSchemeShard::TXTYPE_KESUS_CONFIG_RESULT) \ - action(TEvPersQueue::TEvDropTabletReply, NSchemeShard::TXTYPE_DROP_TABLET_RESULT) \ - action(TEvPersQueue::TEvUpdateConfigResponse, NSchemeShard::TXTYPE_PERSQUEUE_CONFIG_RESULT) \ - action(TEvPersQueue::TEvProposeTransactionResult, NSchemeShard::TXTYPE_PERSQUEUE_PROPOSE_RESULT) \ - action(TEvBlobDepot::TEvApplyConfigResult, NSchemeShard::TXTYPE_BLOB_DEPOT_CONFIG_RESULT) \ + action(TEvBlockStore, TEvUpdateVolumeConfigResponse, NSchemeShard::TXTYPE_BLOCKSTORE_CONFIG_RESULT) \ + action(TEvFileStore, TEvUpdateConfigResponse, NSchemeShard::TXTYPE_FILESTORE_CONFIG_RESULT) \ + action(NKesus::TEvKesus, TEvSetConfigResult, NSchemeShard::TXTYPE_KESUS_CONFIG_RESULT) \ + action(TEvPersQueue, TEvDropTabletReply, NSchemeShard::TXTYPE_DROP_TABLET_RESULT) \ + action(TEvPersQueue, TEvUpdateConfigResponse, NSchemeShard::TXTYPE_PERSQUEUE_CONFIG_RESULT) \ + action(TEvPersQueue, TEvProposeTransactionResult, NSchemeShard::TXTYPE_PERSQUEUE_PROPOSE_RESULT) \ + action(TEvBlobDepot, TEvApplyConfigResult, NSchemeShard::TXTYPE_BLOB_DEPOT_CONFIG_RESULT) \ \ - action(TEvPrivate::TEvOperationPlan, NSchemeShard::TXTYPE_PLAN_STEP) \ - action(TEvPrivate::TEvCompletePublication, NSchemeShard::TXTYPE_NOTIFY_OPERATION_COMPLETE_PUBLICATION) \ - action(TEvPrivate::TEvCompleteBarrier, NSchemeShard::TXTYPE_NOTIFY_OPERATION_COMPLETE_BARRIER) \ + action(NSchemeShard::TEvPrivate, TEvOperationPlan, NSchemeShard::TXTYPE_PLAN_STEP) \ + action(NSchemeShard::TEvPrivate, TEvCompletePublication, NSchemeShard::TXTYPE_NOTIFY_OPERATION_COMPLETE_PUBLICATION) \ + action(NSchemeShard::TEvPrivate, TEvCompleteBarrier, NSchemeShard::TXTYPE_NOTIFY_OPERATION_COMPLETE_BARRIER) \ \ - action(TEvPersQueue::TEvProposeTransactionAttachResult, NSchemeShard::TXTYPE_PERSQUEUE_PROPOSE_ATTACH_RESULT) + action(TEvDataShard, TEvProposeTransactionAttachResult, NSchemeShard::TXTYPE_PERSQUEUE_PROPOSE_ATTACH_RESULT) + + +//NOTE: Forward declare all events that schemeshard should be able to receive +#define EventForwardDecl(NS, TEvType, ...) \ + namespace NKikimr::NS { \ + struct TEvType; \ + using TEvType ## __HandlePtr = TAutoPtr<TEventHandle<TEvType>>; \ + } + + SCHEMESHARD_INCOMING_EVENTS(EventForwardDecl) +#undef EventForwardDecl namespace NKikimr { @@ -172,8 +172,8 @@ public: template <EventBasePtr TEvPtr> static TString DebugReply(const TEvPtr& ev); -#define DefaultHandleReply(TEvType, ...) \ - virtual bool HandleReply(TEvType::TPtr& ev, TOperationContext& context); +#define DefaultHandleReply(NS, TEvType, ...) \ + virtual bool HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context); SCHEMESHARD_INCOMING_EVENTS(DefaultHandleReply) #undef DefaultHandleReply @@ -190,8 +190,8 @@ class TSubOperationState: public ISubOperationState { public: using TPtr = THolder<TSubOperationState>; -#define DefaultHandleReply(TEvType, ...) \ - bool HandleReply(TEvType::TPtr& ev, TOperationContext& context) override; +#define DefaultHandleReply(NS, TEvType, ...) \ + bool HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context) override; SCHEMESHARD_INCOMING_EVENTS(DefaultHandleReply) #undef DefaultHandleReply @@ -290,8 +290,8 @@ public: return Progress(context, &ISubOperationState::ProgressState); } - #define DefaultHandleReply(TEvType, ...) \ - bool HandleReply(TEvType::TPtr& ev, TOperationContext& context) override; + #define DefaultHandleReply(NS, TEvType, ...) \ + bool HandleReply(::NKikimr::NS::TEvType ## __HandlePtr& ev, TOperationContext& context) override; SCHEMESHARD_INCOMING_EVENTS(DefaultHandleReply) #undef DefaultHandleReply diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_rmdir.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_rmdir.cpp index 0dfd0feb8b..dce298dc57 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_rmdir.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_rmdir.cpp @@ -1,6 +1,8 @@ #include "schemeshard__operation_part.h" #include "schemeshard_impl.h" +#include "schemeshard_private.h" + namespace { using namespace NKikimr; diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_split_merge.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_split_merge.cpp index 49ab9c627c..1e12450d20 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_split_merge.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_split_merge.cpp @@ -3,6 +3,7 @@ #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/mind/hive/hive.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__operation_upgrade_subdomain.cpp b/ydb/core/tx/schemeshard/schemeshard__operation_upgrade_subdomain.cpp index e5e4bd42ab..d9c06ddf5e 100644 --- a/ydb/core/tx/schemeshard/schemeshard__operation_upgrade_subdomain.cpp +++ b/ydb/core/tx/schemeshard/schemeshard__operation_upgrade_subdomain.cpp @@ -1,9 +1,10 @@ #include "schemeshard__operation_part.h" #include "schemeshard__operation_common.h" -#include "schemeshard_path_describer.h" #include "schemeshard_impl.h" #include <ydb/core/base/subdomain.h> +#include <ydb/core/base/path.h> +#include <ydb/core/mind/hive/hive.h> #include <ydb/core/scheme/scheme_types_proto.h> namespace { diff --git a/ydb/core/tx/schemeshard/schemeshard__stats.h b/ydb/core/tx/schemeshard/schemeshard__stats.h index 23a296b015..9c8d3ad77a 100644 --- a/ydb/core/tx/schemeshard/schemeshard__stats.h +++ b/ydb/core/tx/schemeshard/schemeshard__stats.h @@ -1,10 +1,5 @@ #pragma once -#include "schemeshard.h" -#include "schemeshard_private.h" -#include "schemeshard_tx_infly.h" -#include "schemeshard__operation.h" - #include <ydb/core/tablet_flat/tablet_flat_executed.h> namespace NKikimr { diff --git a/ydb/core/tx/schemeshard/schemeshard_impl.cpp b/ydb/core/tx/schemeshard/schemeshard_impl.cpp index 5673d0c29a..f63eb65f84 100644 --- a/ydb/core/tx/schemeshard/schemeshard_impl.cpp +++ b/ydb/core/tx/schemeshard/schemeshard_impl.cpp @@ -4851,7 +4851,7 @@ void TSchemeShard::StateWork(STFUNC_SIG) { HFuncTraced(TEvSchemeShard::TEvLogin, Handle); - HFuncTraced(TEvPersQueue::TEvProposeTransactionAttachResult, Handle); + HFuncTraced(TEvDataShard::TEvProposeTransactionAttachResult, Handle); HFuncTraced(TEvTxProxySchemeCache::TEvNavigateKeySetResult, Handle); HFuncTraced(TEvPrivate::TEvSendBaseStatsToSA, Handle); @@ -5445,12 +5445,12 @@ void TSchemeShard::Handle(TEvPrivate::TEvProgressOperation::TPtr &ev, const TAct Execute(CreateTxOperationProgress(TOperationId(txId, ev->Get()->TxPartId)), ctx); } -void TSchemeShard::Handle(TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& ev, const TActorContext& ctx) +void TSchemeShard::Handle(TEvDataShard::TEvProposeTransactionAttachResult::TPtr& ev, const TActorContext& ctx) { const auto txId = TTxId(ev->Get()->Record.GetTxId()); if (!Operations.contains(txId)) { LOG_WARN_S(ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, - "Got TEvPersQueue::TEvProposeTransactionAttachResult" + "Got TEvDataShard::TEvProposeTransactionAttachResult" << " for unknown txId: " << txId << " message: " << ev->Get()->Record.ShortDebugString()); return; @@ -5460,7 +5460,7 @@ void TSchemeShard::Handle(TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& TSubTxId partId = Operations.at(txId)->FindRelatedPartByTabletId(tabletId, ctx); if (partId == InvalidSubTxId) { LOG_WARN_S(ctx, NKikimrServices::FLAT_TX_SCHEMESHARD, - "Got TEvPersQueue::TEvProposeTransactionAttachResult but partId is unknown" + "Got TEvDataShard::TEvProposeTransactionAttachResult but partId is unknown" << ", for txId: " << txId << ", tabletId: " << tabletId << ", at schemeshard: " << TabletID()); diff --git a/ydb/core/tx/schemeshard/schemeshard_impl.h b/ydb/core/tx/schemeshard/schemeshard_impl.h index 8d4ce1e65d..060febb707 100644 --- a/ydb/core/tx/schemeshard/schemeshard_impl.h +++ b/ydb/core/tx/schemeshard/schemeshard_impl.h @@ -59,6 +59,10 @@ #include <ydb/core/blockstore/core/blockstore.h> #include <ydb/core/filestore/core/filestore.h> +#include <ydb/core/tx/datashard/datashard.h> +#include <ydb/core/tx/columnshard/columnshard.h> +#include <ydb/core/blob_depot/events.h> + #include <ydb/library/login/login.h> #include <util/generic/ptr.h> @@ -1070,7 +1074,7 @@ public: void Handle(TEvPrivate::TEvProgressOperation::TPtr &ev, const TActorContext &ctx); - void Handle(TEvPersQueue::TEvProposeTransactionAttachResult::TPtr& ev, const TActorContext& ctx); + void Handle(TEvDataShard::TEvProposeTransactionAttachResult::TPtr& ev, const TActorContext& ctx); void Handle(TEvTabletPipe::TEvClientConnected::TPtr &ev, const TActorContext &ctx); void Handle(TEvTabletPipe::TEvClientDestroyed::TPtr &ev, const TActorContext &ctx); diff --git a/ydb/core/tx/schemeshard/schemeshard_info_types.h b/ydb/core/tx/schemeshard/schemeshard_info_types.h index 8a04416a2b..96adfcbc42 100644 --- a/ydb/core/tx/schemeshard/schemeshard_info_types.h +++ b/ydb/core/tx/schemeshard/schemeshard_info_types.h @@ -1,6 +1,5 @@ #pragma once -#include "schemeshard.h" #include "schemeshard_types.h" #include "schemeshard_tx_infly.h" #include "schemeshard_path_element.h" diff --git a/ydb/core/tx/schemeshard/schemeshard_utils.h b/ydb/core/tx/schemeshard/schemeshard_utils.h index 6ef83df377..0f7d6a73c3 100644 --- a/ydb/core/tx/schemeshard/schemeshard_utils.h +++ b/ydb/core/tx/schemeshard/schemeshard_utils.h @@ -1,6 +1,5 @@ #pragma once -#include "schemeshard.h" #include "schemeshard_types.h" #include "schemeshard_info_types.h" @@ -229,7 +228,7 @@ bool CommonCheck(const TTableDesc& tableDesc, const NKikimrSchemeOp::TIndexCreat if (typeInfo.GetTypeId() != NScheme::NTypeIds::String) { status = NKikimrScheme::EStatus::StatusInvalidParameter; - error = TStringBuilder() << "Index column '" << indexColumnName << "' expected type 'String' but got " << NScheme::TypeName(typeInfo); + error = TStringBuilder() << "Index column '" << indexColumnName << "' expected type 'String' but got " << NScheme::TypeName(typeInfo); return false; } } else if (!IsCompatibleKeyTypes(baseColumnTypes, implTableColumns, uniformTable, error)) { |