diff --git a/be/src/exec/exec_node.cpp b/be/src/exec/exec_node.cpp index ff22f26b84..a70db3f510 100644 --- a/be/src/exec/exec_node.cpp +++ b/be/src/exec/exec_node.cpp @@ -249,14 +249,13 @@ Status ExecNode::open(RuntimeState* state) { if (_vconjunct_ctx_ptr) { RETURN_IF_ERROR((*_vconjunct_ctx_ptr)->open(state)); } + RETURN_IF_ERROR(vectorized::VExpr::open(_projections, state)); if (typeid(*this) != typeid(doris::vectorized::VOlapScanNode) && typeid(*this) != typeid(doris::vectorized::NewOlapScanNode)) { return Expr::open(_conjunct_ctxs, state); } else { return Status::OK(); } - RETURN_IF_ERROR(Expr::open(_conjunct_ctxs, state)); - return vectorized::VExpr::open(_projections, state); } Status ExecNode::reset(RuntimeState* state) { diff --git a/regression-test/suites/correctness/test_view_varchar_length.groovy b/regression-test/suites/correctness/test_view_varchar_length.groovy index a639519cf1..992be1d672 100644 --- a/regression-test/suites/correctness/test_view_varchar_length.groovy +++ b/regression-test/suites/correctness/test_view_varchar_length.groovy @@ -24,7 +24,7 @@ Type before bug fix: varchar(*) suite("test_view_varchar_length") { sql """ DROP TABLE IF EXISTS T """ sql """ - CREATE TABLE `T` ( + CREATE TABLE `t_test_view_varchar_length` ( `id` int, `name` varchar(32) ) ENGINE=OLAP @@ -36,13 +36,13 @@ Type before bug fix: varchar(*) "storage_format" = "V2" ); """ - sql "drop view if exists V;" + sql "drop view if exists v_test_view_varchar_length;" sql """ - create view V as select name from T; + create view v_test_view_varchar_length as select name from t_test_view_varchar_length; """ qt_sql """ - desc V; + desc v_test_view_varchar_length; """ }