fix vec2.0 px merge sort receive and table scan partition pruning bug
This commit is contained in:
@ -939,8 +939,6 @@ int ObPxMSReceiveVecOp::get_all_rows_from_channels(ObPhysicalPlanCtx *phy_plan_c
|
||||
const_cast<ObCompactRow **>(stored_compact_rows_)))) {
|
||||
LOG_WARN("temp row store add batch failed", K(ret));
|
||||
} else {
|
||||
last_store_row = stored_compact_rows_[0];
|
||||
last_store_row_array.at(got_channel_idx) = last_store_row;
|
||||
start_idx = cur_idx;
|
||||
}
|
||||
}
|
||||
@ -974,7 +972,7 @@ int ObPxMSReceiveVecOp::get_all_rows_from_channels(ObPhysicalPlanCtx *phy_plan_c
|
||||
const_cast<ObCompactRow **>(stored_compact_rows_)))) {
|
||||
LOG_WARN("temp row store add batch failed", K(ret));
|
||||
} else {
|
||||
last_store_row = stored_compact_rows_[0];
|
||||
last_store_row = stored_compact_rows_[cur_idx - start_idx - 1];
|
||||
last_store_row_array.at(got_channel_idx) = last_store_row;
|
||||
}
|
||||
}
|
||||
|
||||
@ -2386,6 +2386,9 @@ int ObTableScanOp::construct_partition_range(ObArenaAllocator &allocator,
|
||||
end_row_key[i] = scan_range.end_key_.get_obj_ptr()[pos];
|
||||
sql::ObExpr *expr = part_dep_cols.at(i);
|
||||
sql::ObDatum &datum = expr->locate_datum_for_write(eval_ctx_);
|
||||
if (get_spec().use_rich_format_) {
|
||||
expr->init_vector_for_write(eval_ctx_, VEC_UNIFORM, 1);
|
||||
}
|
||||
if (OB_FAIL(datum.from_obj(start_row_key[i], expr->obj_datum_map_))) {
|
||||
LOG_WARN("convert obj to datum failed", K(ret));
|
||||
} else if (is_lob_storage(start_row_key[i].get_type()) &&
|
||||
|
||||
Reference in New Issue
Block a user