Revert iter object by upper layer
This commit is contained in:
committed by
wangzelin.wzl
parent
790775ee68
commit
3c66d1a97b
@ -711,7 +711,7 @@ void ObLSTabletService::report_tablet_to_rs(
|
||||
}
|
||||
}
|
||||
|
||||
int ObLSTabletService::table_scan(ObTableScanIterator &iter, ObTableScanParam ¶m, ObNewRowIterator *&result)
|
||||
int ObLSTabletService::table_scan(ObTableScanIterator &iter, ObTableScanParam ¶m)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
NG_TRACE(S_table_scan_begin);
|
||||
@ -737,16 +737,13 @@ int ObLSTabletService::table_scan(ObTableScanIterator &iter, ObTableScanParam &p
|
||||
if (!is_same) {
|
||||
ret = OB_REPLICA_NOT_READABLE;
|
||||
LOG_WARN("ls is not allow to read", K(ret), KPC(ls_), KP(&iter));
|
||||
} else {
|
||||
// result should be assigned at the last
|
||||
result = &iter;
|
||||
}
|
||||
}
|
||||
NG_TRACE(S_table_scan_end);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ObLSTabletService::table_rescan(ObTableScanParam ¶m, ObNewRowIterator *&result)
|
||||
int ObLSTabletService::table_rescan(ObTableScanParam ¶m, ObNewRowIterator *result)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
NG_TRACE(S_table_rescan_begin);
|
||||
|
||||
@ -275,11 +275,10 @@ public:
|
||||
// DAS interface
|
||||
int table_scan(
|
||||
ObTableScanIterator &iter,
|
||||
ObTableScanParam ¶m,
|
||||
common::ObNewRowIterator *&result);
|
||||
ObTableScanParam ¶m);
|
||||
int table_rescan(
|
||||
ObTableScanParam ¶m,
|
||||
common::ObNewRowIterator *&result);
|
||||
common::ObNewRowIterator *result);
|
||||
int insert_rows(
|
||||
ObStoreCtx &ctx,
|
||||
const ObDMLBaseParam &dml_param,
|
||||
|
||||
@ -229,6 +229,8 @@ int ObAccessService::table_scan(
|
||||
} else if (OB_ISNULL(iter = common::sop_borrow(ObTableScanIterator))) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("alloc table scan iterator fail", K(ret));
|
||||
} else if (FALSE_IT(result = iter)) {
|
||||
// upper layer responsible for releasing iter object
|
||||
} else if (OB_FAIL(check_read_allowed_(ls_id,
|
||||
data_tablet_id,
|
||||
access_type,
|
||||
@ -243,15 +245,11 @@ int ObAccessService::table_scan(
|
||||
} else if (OB_ISNULL(tablet_service = ls->get_tablet_svr())) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_ERROR("tablet service should not be null.", K(ret), K(ls_id));
|
||||
} else if (OB_FAIL(tablet_service->table_scan(*iter, param, result))) {
|
||||
} else if (OB_FAIL(tablet_service->table_scan(*iter, param))) {
|
||||
LOG_WARN("Fail to scan table, ", K(ret), K(ls_id), K(param));
|
||||
} else {
|
||||
NG_TRACE(storage_table_scan_end);
|
||||
}
|
||||
if (OB_FAIL(ret) && OB_NOT_NULL(iter)) {
|
||||
iter->reset();
|
||||
common::sop_return(ObTableScanIterator, iter);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user