[Chore](materialized-view) add ssb_flat mv test case (#20869)
add ssb_flat mv test case
This commit is contained in:
@ -56,17 +56,18 @@ namespace doris::vectorized {
|
||||
|
||||
const std::string AGG_STATE_SUFFIX = "_state";
|
||||
|
||||
VectorizedFnCall::VectorizedFnCall(const TExprNode& node) : VExpr(node) {}
|
||||
VectorizedFnCall::VectorizedFnCall(const TExprNode& node) : VExpr(node) {
|
||||
_expr_name = fmt::format("VectorizedFnCall[{}](arguments={},return={})", _fn.name.function_name,
|
||||
get_child_names(), _data_type->get_name());
|
||||
}
|
||||
|
||||
Status VectorizedFnCall::prepare(RuntimeState* state, const RowDescriptor& desc,
|
||||
VExprContext* context) {
|
||||
RETURN_IF_ERROR_OR_PREPARED(VExpr::prepare(state, desc, context));
|
||||
ColumnsWithTypeAndName argument_template;
|
||||
argument_template.reserve(_children.size());
|
||||
std::vector<std::string_view> child_expr_name;
|
||||
for (auto child : _children) {
|
||||
argument_template.emplace_back(nullptr, child->data_type(), child->expr_name());
|
||||
child_expr_name.emplace_back(child->expr_name());
|
||||
}
|
||||
|
||||
if (_fn.binary_type == TFunctionBinaryType::RPC) {
|
||||
@ -106,17 +107,12 @@ Status VectorizedFnCall::prepare(RuntimeState* state, const RowDescriptor& desc,
|
||||
_fn.name.function_name, argument_template, _data_type, state->be_exec_version());
|
||||
}
|
||||
if (_function == nullptr) {
|
||||
std::string type_str;
|
||||
for (auto arg : argument_template) {
|
||||
type_str = type_str + " " + arg.type->get_name();
|
||||
}
|
||||
return Status::InternalError(
|
||||
"Function {} is not implemented, input param type is {}, "
|
||||
"Function {} get failed, expr is {} "
|
||||
"and return type is {}.",
|
||||
_fn.name.function_name, type_str, _data_type->get_name());
|
||||
_fn.name.function_name, _expr_name, _data_type->get_name());
|
||||
}
|
||||
VExpr::register_function_context(state, context);
|
||||
_expr_name = fmt::format("{}({})", _fn.name.function_name, child_expr_name);
|
||||
_function_name = _fn.name.function_name;
|
||||
_can_fast_execute = _function->can_fast_execute();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user