diff --git a/ydb/library/yql/core/cbo/cbo_optimizer_new.cpp b/ydb/library/yql/core/cbo/cbo_optimizer_new.cpp index 2bc1faf7b94e..0925a3236654 100644 --- a/ydb/library/yql/core/cbo/cbo_optimizer_new.cpp +++ b/ydb/library/yql/core/cbo/cbo_optimizer_new.cpp @@ -216,7 +216,7 @@ TOptimizerStatistics TBaseProviderContext::ComputeJoinStats( double cost = ComputeJoinCost(leftStats, rightStats, newCard, newByteSize, joinAlgo) + leftStats.Cost + rightStats.Cost; - auto result = TOptimizerStatistics(newCard, newNCols, cost, outputType, newByteSize, + auto result = TOptimizerStatistics(outputType, newCard, newNCols, newByteSize, cost, leftKeyColumns ? leftStats.KeyColumns : ( rightKeyColumns ? rightStats.KeyColumns : TOptimizerStatistics::EmptyColumns)); result.Selectivity = selectivity; return result; diff --git a/ydb/library/yql/core/yql_statistics.cpp b/ydb/library/yql/core/yql_statistics.cpp index 721e4b3684f2..f28080b31b9d 100644 --- a/ydb/library/yql/core/yql_statistics.cpp +++ b/ydb/library/yql/core/yql_statistics.cpp @@ -28,20 +28,20 @@ bool TOptimizerStatistics::Empty() const { } TOptimizerStatistics::TOptimizerStatistics( - EStatisticsType type = BaseTable, - double nrows = 0.0, - int ncols = 0, - double byteSize = 0.0, - double cost = 0.0, - const TVector& keyColumns = EmptyColumns, - std::unique_ptr specific = nullptr) + EStatisticsType type, + double nrows, + int ncols, + double byteSize, + double cost, + const TVector& keyColumns, + std::unique_ptr specific) : Type(type) - , NRows(nrows) + , Nrows(nrows) , Ncols(ncols) , ByteSize(byteSize) , Cost(cost) , KeyColumns(keyColumns) - , Specific(specific) + , Specific(std::move(specific)) { } diff --git a/ydb/library/yql/core/yql_statistics.h b/ydb/library/yql/core/yql_statistics.h index c63195f79858..abb3b65e230f 100644 --- a/ydb/library/yql/core/yql_statistics.h +++ b/ydb/library/yql/core/yql_statistics.h @@ -40,7 +40,7 @@ struct TOptimizerStatistics { TOptimizerStatistics() : KeyColumns(EmptyColumns) {} TOptimizerStatistics( - EStatisticsType type = BaseTable, + EStatisticsType type, double nrows = 0.0, int ncols = 0, double byteSize = 0.0, diff --git a/ydb/library/yql/providers/dq/provider/yql_dq_datasource.cpp b/ydb/library/yql/providers/dq/provider/yql_dq_datasource.cpp index 7b73882529f7..798cc3847630 100644 --- a/ydb/library/yql/providers/dq/provider/yql_dq_datasource.cpp +++ b/ydb/library/yql/providers/dq/provider/yql_dq_datasource.cpp @@ -50,7 +50,7 @@ class TDqDataProviderSource: public TDataProviderBase { , ExecTransformer_([this, execTransformerFactory] () { return THolder(execTransformerFactory(State_)); }) , TypeAnnotationTransformer_([] () { return CreateDqsDataSourceTypeAnnotationTransformer(); }) , ConstraintsTransformer_([] () { return CreateDqDataSourceConstraintTransformer(); }) - , StatisticsTransformer_([this]() { return CreateDqsStatisticsTransformer(State_, TBaseProviderContext::instance()); }) + , StatisticsTransformer_([this]() { return CreateDqsStatisticsTransformer(State_, TBaseProviderContext::Instance()); }) { } TStringBuf GetName() const override {