[Bug](topn opt) Fix be crash when enable topn opt with larger thresho… (#18858) (#18987)
topn opt should be inited when update it
diff --git a/be/src/vec/exec/vsort_node.cpp b/be/src/vec/exec/vsort_node.cpp
index 2328393..cd77e7d 100644
--- a/be/src/vec/exec/vsort_node.cpp
+++ b/be/src/vec/exec/vsort_node.cpp
@@ -58,6 +58,7 @@
_sorter.reset(new FullSorter(_vsort_exec_exprs, _limit, _offset, _pool, _is_asc_order,
_nulls_first, row_desc, state, _runtime_profile.get()));
}
+
// init runtime predicate
_use_topn_opt = tnode.sort_node.use_topn_opt;
if (_use_topn_opt) {
@@ -71,8 +72,8 @@
}
for (auto slot : tuple_desc->slots()) {
if (slot->id() == first_sort_slot.slot_id) {
- RETURN_IF_ERROR(query_ctx->get_runtime_predicate().init(slot->type().type,
- _nulls_first[0]));
+ RETURN_IF_ERROR(
+ query_ctx->get_runtime_predicate().init(slot->type().type));
break;
}
}