diff --git a/src/sql/das/ob_das_context.cpp b/src/sql/das/ob_das_context.cpp index d63d136a42..41be77950d 100644 --- a/src/sql/das/ob_das_context.cpp +++ b/src/sql/das/ob_das_context.cpp @@ -570,6 +570,7 @@ OB_DEF_SERIALIZE(ObDASCtx) } OB_UNIS_ENCODE(flags_); OB_UNIS_ENCODE(snapshot_); + OB_UNIS_ENCODE(location_router_); return ret; } @@ -599,6 +600,7 @@ OB_DEF_DESERIALIZE(ObDASCtx) if (OB_SUCC(ret) && OB_FAIL(rebuild_tablet_loc_reference())) { LOG_WARN("rebuild tablet loc reference failed", K(ret)); } + OB_UNIS_DECODE(location_router_); return ret; } @@ -612,6 +614,7 @@ OB_DEF_SERIALIZE_SIZE(ObDASCtx) } OB_UNIS_ADD_LEN(flags_); OB_UNIS_ADD_LEN(snapshot_); + OB_UNIS_ADD_LEN(location_router_); return len; } } // namespace sql diff --git a/src/sql/das/ob_das_location_router.cpp b/src/sql/das/ob_das_location_router.cpp index 888ea3698d..5d164d845e 100755 --- a/src/sql/das/ob_das_location_router.cpp +++ b/src/sql/das/ob_das_location_router.cpp @@ -1255,5 +1255,7 @@ int ObDASLocationRouter::get_external_table_ls_location(ObLSLocation &location) return ret; } +OB_SERIALIZE_MEMBER(ObDASLocationRouter, all_tablet_list_); + } // namespace sql } // namespace oceanbase diff --git a/src/sql/das/ob_das_location_router.h b/src/sql/das/ob_das_location_router.h index b172d7bdb5..feb58400f3 100644 --- a/src/sql/das/ob_das_location_router.h +++ b/src/sql/das/ob_das_location_router.h @@ -275,6 +275,7 @@ private: class ObDASLocationRouter { + OB_UNIS_VERSION(1); friend class ObDASCtx; typedef common::ObList VirtualSvrList; public: @@ -338,6 +339,8 @@ private: int last_errno_; int cur_errno_; int64_t retry_cnt_; + // NOTE: Only all_tablet_list_ needs to be serialized and send to other server to perform das remote execution; + // And other members will be collected by execution server self, No need to perform serialization; ObList all_tablet_list_; ObList succ_tablet_list_; VirtualSvrList virtual_server_list_; diff --git a/src/sql/das/ob_data_access_service.cpp b/src/sql/das/ob_data_access_service.cpp index c94afd7675..eb8d535ab8 100644 --- a/src/sql/das/ob_data_access_service.cpp +++ b/src/sql/das/ob_data_access_service.cpp @@ -290,7 +290,7 @@ int ObDataAccessService::retry_das_task(ObDASRef &das_ref, ObIDASTaskOp &task_op } else if (OB_FAIL(execute_dist_das_task(das_ref, das_task_wrapper, false))) { LOG_WARN("execute dist DAS task failed", K(ret)); } - LOG_INFO("[DAS RETRY] Retry completing the DAS Task", KPC(task_op.get_tablet_loc())); + LOG_INFO("[DAS RETRY] Retry completing the DAS Task", KPC(task_op.get_tablet_loc()), KR(ret)); } task_op.errcode_ = ret; retry_continue = (OB_SUCCESS != ret);