diff --git a/dbms/src/Interpreters/ExpressionAnalyzer.cpp b/dbms/src/Interpreters/ExpressionAnalyzer.cpp index 53e06f9a7416d98c422cea10e72c336a8cb373e9..60e35d621a52737abc3d0a9b030b3960b5a07743 100644 --- a/dbms/src/Interpreters/ExpressionAnalyzer.cpp +++ b/dbms/src/Interpreters/ExpressionAnalyzer.cpp @@ -211,6 +211,8 @@ bool ExpressionAnalyzer::needSignRewrite() return merge_tree->getName() == "CollapsingMergeTree"; if (const StorageDistributed * distributed = dynamic_cast(&*storage)) return !distributed->getSignColumnName().empty(); + if (const StorageReplicatedMergeTree * replicated = dynamic_cast(&*storage)) + return replicated->getName() == "CollapsingReplicatedMergeTree"; } return false; } @@ -222,6 +224,8 @@ String ExpressionAnalyzer::getSignColumnName() return merge_tree->getSignColumnName(); if (const StorageDistributed * distributed = dynamic_cast(&*storage)) return distributed->getSignColumnName(); + if (const StorageReplicatedMergeTree * replicated = dynamic_cast(&*storage)) + return replicated->getSignColumnName(); return ""; }