Ps bug repair about add literal_stmt_type_ in PsStmtInfo and check -0.0 in double_cell_str

This commit is contained in:
obdev
2023-08-18 10:40:28 +00:00
committed by ob-robot
parent a25829676b
commit 8f90d2a042
4 changed files with 14 additions and 2 deletions

View File

@ -866,6 +866,7 @@ int ObSql::fill_result_set(const ObPsStmtId stmt_id, const ObPsStmtInfo &stmt_in
int ret = OB_SUCCESS;
result.set_statement_id(stmt_id);
result.set_stmt_type(stmt_info.get_stmt_type());
result.set_literal_stmt_type(stmt_info.get_literal_stmt_type());
const ObPsSqlMeta &sql_meta = stmt_info.get_ps_sql_meta();
result.set_p_param_fileds(const_cast<common::ParamsFieldIArray *>(&sql_meta.get_param_fields()));
result.set_p_column_fileds(const_cast<common::ParamsFieldIArray *>(&sql_meta.get_column_fields()));
@ -927,6 +928,8 @@ int ObSql::do_add_ps_cache(const PsCacheInfoCtx &info_ctx,
} else if (OB_ISNULL(ps_stmt_item) || OB_ISNULL(ref_stmt_info)) {
ret = OB_ERR_UNEXPECTED;
LOG_WARN("stmt_item or stmt_info is NULL", K(ret), KP(ps_stmt_item), KP(ref_stmt_info));
} else {
ref_stmt_info->set_literal_stmt_type(result.get_literal_stmt_type());
}
if (NULL != ref_stmt_info) {
ref_stmt_info->set_is_sensitive_sql(info_ctx.is_sensitive_sql_);