sys var placeholder & session serialize placeholder
This commit is contained in:
@ -79,6 +79,8 @@ ObBasicSessionInfo::ObBasicSessionInfo(const uint64_t tenant_id)
|
||||
sess_bt_buff_pos_(0),
|
||||
sess_ref_cnt_(0),
|
||||
sess_ref_seq_(0),
|
||||
found_rows_(1),
|
||||
affected_rows_(-1),
|
||||
block_allocator_(SMALL_BLOCK_SIZE, common::OB_MALLOC_NORMAL_BLOCK_SIZE - 32,
|
||||
//这里减32是为了适配ObMalloc对齐规则, 防止超8k的内存分配
|
||||
ObMalloc(lib::ObMemAttr(orig_tenant_id_, ObModIds::OB_SQL_SESSION_SBLOCK))),
|
||||
@ -436,6 +438,8 @@ void ObBasicSessionInfo::reset(bool skip_sys_var)
|
||||
last_update_tz_time_ = 0;
|
||||
is_client_sessid_support_ = false;
|
||||
sess_bt_buff_pos_ = 0;
|
||||
found_rows_ = 1;
|
||||
affected_rows_ = -1;
|
||||
ATOMIC_SET(&sess_ref_cnt_ , 0);
|
||||
// 最后再重置所有allocator
|
||||
// 否则thread_data_.user_name_之类的属性会有野指针,在session_mgr的foreach接口遍历时可能core掉。
|
||||
@ -4396,7 +4400,9 @@ OB_DEF_SERIALIZE(ObBasicSessionInfo)
|
||||
flt_vars_.row_traceformat_,
|
||||
flt_vars_.last_flt_span_id_,
|
||||
exec_min_cluster_version_,
|
||||
is_client_sessid_support_);
|
||||
is_client_sessid_support_,
|
||||
found_rows_,
|
||||
affected_rows_);
|
||||
}();
|
||||
return ret;
|
||||
}
|
||||
@ -4598,7 +4604,9 @@ OB_DEF_DESERIALIZE(ObBasicSessionInfo)
|
||||
}
|
||||
if (OB_SUCC(ret) && pos < data_len) {
|
||||
LST_DO_CODE(OB_UNIS_DECODE,
|
||||
is_client_sessid_support_);
|
||||
is_client_sessid_support_,
|
||||
found_rows_,
|
||||
affected_rows_);
|
||||
}
|
||||
// deep copy string.
|
||||
if (OB_SUCC(ret)) {
|
||||
@ -4913,7 +4921,9 @@ OB_DEF_SERIALIZE_SIZE(ObBasicSessionInfo)
|
||||
flt_vars_.row_traceformat_,
|
||||
flt_vars_.last_flt_span_id_,
|
||||
exec_min_cluster_version_,
|
||||
is_client_sessid_support_);
|
||||
is_client_sessid_support_,
|
||||
found_rows_,
|
||||
affected_rows_);
|
||||
return len;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user