This is an automated email from the ASF dual-hosted git repository.
gabriellee pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-1.2-lts by this push:
new e1965ec0b9 [1.2](fix) fix FE compile error and refine BE error
processing (#23433)
e1965ec0b9 is described below
commit e1965ec0b904ac7b9dd00869a2a77b5d161f79e2
Author: Gabriel <[email protected]>
AuthorDate: Thu Aug 24 16:48:04 2023 +0800
[1.2](fix) fix FE compile error and refine BE error processing (#23433)
---
be/src/vec/exec/vunion_node.cpp | 12 +++++++-----
be/src/vec/exec/vunion_node.h | 2 +-
.../src/main/java/org/apache/doris/load/ExportJob.java | 1 -
3 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/be/src/vec/exec/vunion_node.cpp b/be/src/vec/exec/vunion_node.cpp
index a18bb1215e..8afe5bce8d 100644
--- a/be/src/vec/exec/vunion_node.cpp
+++ b/be/src/vec/exec/vunion_node.cpp
@@ -153,7 +153,9 @@ Status VUnionNode::get_next_materialized(RuntimeState*
state, Block* block) {
child(_child_idx)->get_next_span(), _child_eos);
SCOPED_TIMER(_materialize_exprs_evaluate_timer);
if (child_block.rows() > 0) {
- mblock.merge(materialize_block(&child_block));
+ Block res;
+ RETURN_IF_ERROR(materialize_block(&child_block, &res));
+ mblock.merge(res);
}
// It shouldn't be the case that we reached the limit because we
shouldn't have
// incremented '_num_rows_returned' yet.
@@ -275,17 +277,17 @@ void VUnionNode::debug_string(int indentation_level,
std::stringstream* out) con
*out << ")" << std::endl;
}
-Block VUnionNode::materialize_block(Block* src_block) {
+Status VUnionNode::materialize_block(Block* src_block, Block* dst_block) {
const std::vector<VExprContext*>& child_exprs =
_child_expr_lists[_child_idx];
ColumnsWithTypeAndName colunms;
for (size_t i = 0; i < child_exprs.size(); ++i) {
int result_column_id = -1;
- auto state = child_exprs[i]->execute(src_block, &result_column_id);
- CHECK(state.ok()) << state.to_string();
+ RETURN_IF_ERROR(child_exprs[i]->execute(src_block, &result_column_id));
colunms.emplace_back(src_block->get_by_position(result_column_id));
}
_child_row_idx += src_block->rows();
- return {colunms};
+ *dst_block = {colunms};
+ return Status::OK();
}
} // namespace vectorized
diff --git a/be/src/vec/exec/vunion_node.h b/be/src/vec/exec/vunion_node.h
index 5650d38988..1252bd3f97 100644
--- a/be/src/vec/exec/vunion_node.h
+++ b/be/src/vec/exec/vunion_node.h
@@ -77,7 +77,7 @@ private:
/// Evaluates exprs for the current child and materializes the results
into 'tuple_buf',
/// which is attached to 'dst_block'. Runs until 'dst_block' is at
capacity, or all rows
/// have been consumed from the current child block. Updates
'_child_row_idx'.
- Block materialize_block(Block* dst_block);
+ Status materialize_block(Block* src_block, Block* dst_block);
Status get_error_msg(const std::vector<VExprContext*>& exprs);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java
b/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java
index fe9420c583..62ff878af2 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java
@@ -471,7 +471,6 @@ public class ExportJob implements Writable {
default:
LOG.info("Table Type unsupport export, ExportTable type : {}",
exportTable.getType());
throw new UserException("Table Type unsupport export :" +
exportTable.getType());
- break;
}
fragment.setOutputExprs(createOutputExprs());
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]