Listing all parts in log have no sense. 
Should be either silenced, either combined into a single line.
}
        else
        {
            
            std::shared_ptr<ASTFunction> lower_function;
            std::shared_ptr<ASTFunction> upper_function;
            
            
            
            ASTPtr sampling_key_ast = metadata_snapshot->getSamplingKeyAST();
            if (select.final())
            {
                sampling_key_ast = std::make_shared<ASTIdentifier>(sampling_key.column_names[0]);
                
                available_real_columns.emplace_back(sampling_key.column_names[0], std::move(sampling_column_type));
            }
            if (has_lower_limit)
            {
                if (!key_condition.addCondition(sampling_key.column_names[0], Range::createLeftBounded(lower, true)))
                    throw Exception("Sampling column not in primary key", ErrorCodes::ILLEGAL_COLUMN);
                ASTPtr args = std::make_shared<ASTExpressionList>();
                args->children.push_back(sampling_key_ast);
                args->children.push_back(std::make_shared<ASTLiteral>(lower));
                lower_function = std::make_shared<ASTFunction>();
                lower_function->name = "greaterOrEquals";
                lower_function->arguments = args;
                lower_function->children.push_back(lower_function->arguments);
                filter_function = lower_function;
            }
            if (has_upper_limit)