[BUGFIX] fix mysqltest
This commit is contained in:
@ -325,6 +325,7 @@ int ObMultipleMerge::get_next_row(ObDatumRow *&row)
|
||||
if (need_padding_) {
|
||||
padding_allocator_.reuse();
|
||||
}
|
||||
reuse_lob_locator();
|
||||
while (OB_SUCC(ret)) {
|
||||
if (access_ctx_->is_limit_end()) {
|
||||
ret = OB_ITER_END;
|
||||
@ -448,6 +449,7 @@ int ObMultipleMerge::get_next_normal_rows(int64_t &count, int64_t capacity)
|
||||
if (need_padding_) {
|
||||
padding_allocator_.reuse();
|
||||
}
|
||||
reuse_lob_locator();
|
||||
while (OB_SUCC(ret) && !vector_store->is_end()) {
|
||||
bool can_batch = false;
|
||||
if (access_ctx_->is_limit_end()) {
|
||||
@ -552,6 +554,7 @@ int ObMultipleMerge::get_next_aggregate_row(ObDatumRow *&row)
|
||||
int64_t batch_size = max(1, access_param_->op_->get_batch_size());
|
||||
access_param_->op_->get_eval_ctx().reuse(batch_size);
|
||||
}
|
||||
reuse_lob_locator();
|
||||
while (OB_SUCC(ret) && !agg_row_store->is_end()) {
|
||||
bool can_batch = false;
|
||||
// clear evaluated flag for every row
|
||||
@ -1298,7 +1301,6 @@ int ObMultipleMerge::read_lob_columns_full_data(blocksstable::ObDatumRow &row)
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("Invalid col count", K(row), KPC(out_cols_param));
|
||||
} else {
|
||||
lob_reader_.reuse();
|
||||
for (int64_t i = 0; OB_SUCC(ret) && i < row.count_; ++i) {
|
||||
blocksstable::ObStorageDatum &datum = row.storage_datums_[i];
|
||||
if (out_cols_param->at(i)->get_meta_type().is_lob_storage()) {
|
||||
@ -1375,5 +1377,14 @@ int ObMultipleMerge::fuse_lob_default(ObObj &def_cell, const uint64_t col_id)
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void ObMultipleMerge::reuse_lob_locator()
|
||||
{
|
||||
if (NULL != access_ctx_->lob_locator_helper_) {
|
||||
access_ctx_->lob_locator_helper_->reuse();
|
||||
}
|
||||
lob_reader_.reuse();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user