fix core in nlj
This commit is contained in:
@ -81,6 +81,7 @@ public:
|
|||||||
int batch_fill_group_buffer(const int64_t max_row_cnt, const ObBatchRows *&batch_rows);
|
int batch_fill_group_buffer(const int64_t max_row_cnt, const ObBatchRows *&batch_rows);
|
||||||
int get_next_row_from_store();
|
int get_next_row_from_store();
|
||||||
int get_next_batch_from_store(int64_t max_rows, int64_t &read_rows);
|
int get_next_batch_from_store(int64_t max_rows, int64_t &read_rows);
|
||||||
|
ObBatchRowDatums &get_last_batch() { return last_batch_; }
|
||||||
void destroy();
|
void destroy();
|
||||||
private:
|
private:
|
||||||
int init_group_params();
|
int init_group_params();
|
||||||
|
|||||||
@ -847,7 +847,9 @@ int ObNestedLoopJoinOp::process_right_batch()
|
|||||||
} else {
|
} else {
|
||||||
if (MY_SPEC.enable_px_batch_rescan_) {
|
if (MY_SPEC.enable_px_batch_rescan_) {
|
||||||
last_save_batch_.extend_save(eval_ctx_, right_brs->size_);
|
last_save_batch_.extend_save(eval_ctx_, right_brs->size_);
|
||||||
} else if (!MY_SPEC.group_rescan_) {
|
} else if (MY_SPEC.group_rescan_) {
|
||||||
|
group_join_buffer_.get_last_batch().extend_save(eval_ctx_, right_brs->size_);
|
||||||
|
} else {
|
||||||
left_batch_.extend_save(eval_ctx_, right_brs->size_);
|
left_batch_.extend_save(eval_ctx_, right_brs->size_);
|
||||||
}
|
}
|
||||||
left_expr_extend(right_brs->size_);
|
left_expr_extend(right_brs->size_);
|
||||||
|
|||||||
Reference in New Issue
Block a user