[CP] remove unsafe macro OB_UNIS_DECODEx

This commit is contained in:
zhjc1124 2023-12-08 11:47:27 +00:00 committed by ob-robot
parent 5ad48dda72
commit 793f30a828
6 changed files with 12 additions and 27 deletions

View File

@ -69,14 +69,6 @@ void finish_check_serialization();
} \
}
#define OB_UNIS_DECODEx(obj) \
if (OB_SUCC(ret)) { \
if (OB_FAIL(NS_::decode(buf, data_len, pos, obj))) { \
RPC_WARN("decode object fail", \
"name", MSTR(obj), K(data_len), K(pos), K(ret)); \
} \
}
#define OB_UNIS_DECODE(obj) \
if (OB_SUCC(ret) && pos < data_len) { \
if (OB_FAIL(NS_::decode(buf, data_len, pos, obj))) { \
@ -219,8 +211,8 @@ struct EmptyUnisStruct
int64_t version = 0; \
int64_t len = 0; \
if (OB_SUCC(ret)) { \
OB_UNIS_DECODEx(version); \
OB_UNIS_DECODEx(len); \
OB_UNIS_DECODE(version); \
OB_UNIS_DECODE(len); \
CHECK_VERSION_LENGTH(CLS, version, len); \
} \
if (OB_SUCC(ret)) { \

View File

@ -8289,8 +8289,8 @@ int ObBatchCreateTabletArg::skip_unis_array_len(const char *buf,
for (int64_t i = 0; OB_SUCC(ret) && i < count; i++) {
int64_t version = 0;
int64_t len = 0;
OB_UNIS_DECODEx(version);
OB_UNIS_DECODEx(len);
OB_UNIS_DECODE(version);
OB_UNIS_DECODE(len);
CHECK_VERSION_LENGTH(1, version, len);
pos += len;
}

View File

@ -282,8 +282,8 @@ int ObTabletAutoincSeq::deserialize(
{
int ret = OB_SUCCESS;
int64_t len = 0;
OB_UNIS_DECODEx(version_);
OB_UNIS_DECODEx(len);
OB_UNIS_DECODE(version_);
OB_UNIS_DECODE(len);
if (OB_SUCC(ret)) {
int64_t tmp_pos = 0;
if (OB_FAIL(deserialize_(allocator, buf + pos, len, tmp_pos))) {

View File

@ -3974,8 +3974,8 @@ int ObBasicSessionInfo::deserialize_sync_sys_vars(int64_t &deserialize_sys_var_c
ret = OB_SUCCESS;
int64_t sys_var_version = 0;
int64_t sys_var_len = 0;
OB_UNIS_DECODEx(sys_var_version);
OB_UNIS_DECODEx(sys_var_len);
OB_UNIS_DECODE(sys_var_version);
OB_UNIS_DECODE(sys_var_len);
if (OB_SUCC(ret)) {
pos += sys_var_len; // skip
LOG_WARN("invalid sys var id, maybe version is different, skip it", K(sys_var_id));
@ -4503,8 +4503,8 @@ OB_DEF_DESERIALIZE(ObBasicSessionInfo)
ret = OB_SUCCESS;
int64_t sys_var_version = 0;
int64_t sys_var_len = 0;
OB_UNIS_DECODEx(sys_var_version);
OB_UNIS_DECODEx(sys_var_len);
OB_UNIS_DECODE(sys_var_version);
OB_UNIS_DECODE(sys_var_len);
if (OB_SUCC(ret)) {
pos += sys_var_len; // 跳过这段数据
LOG_WARN("invalid sys var id, maybe version is different, skip it", K(sys_var_id));

View File

@ -318,8 +318,8 @@ int ObTenantSuperBlock::deserialize(const char *buf, const int64_t data_len, int
{
int ret = OB_SUCCESS;
int64_t len = 0;
OB_UNIS_DECODEx(version_);
OB_UNIS_DECODEx(len);
OB_UNIS_DECODE(version_);
OB_UNIS_DECODE(len);
if (OB_SUCC(ret)) {
if (UNIS_VERSION < version_) {
ret = ::oceanbase::common::OB_NOT_SUPPORTED;

View File

@ -212,13 +212,6 @@ private:
} \
}
#define OB_TX_UNIS_DECODEx(obj, IDX, arg) \
if (OB_SUCC(ret) && TX_IS_NEED_SER_OR_DE(arg, IDX)) { \
if (OB_FAIL(NS_::decode(buf, data_len, pos, obj))) { \
RPC_WARN("decode object fail", "name", MSTR(obj), K(data_len), K(pos), K(ret)); \
} \
}
#define OB_TX_UNIS_DECODE(obj, IDX, arg) \
if (OB_SUCC(ret) && TX_IS_NEED_SER_OR_DE(arg, IDX) && pos < data_len) { \
if (OB_FAIL(NS_::decode(buf, data_len, pos, obj))) { \