fix cast expr not consistent because of plan cache
This commit is contained in:
@ -411,7 +411,6 @@ namespace sql
|
||||
}
|
||||
// update trace_id by server self
|
||||
} else {
|
||||
LOG_INFO("chestelew cleint not support flt");
|
||||
// update trace_id in query granularity
|
||||
if (sess.is_query_trc_granuality()) {
|
||||
FLT_BEGIN_TRACE();
|
||||
|
@ -1545,7 +1545,7 @@ int ObPlanCacheValue::handle_varchar_charset(ObCharsetType charset_type,
|
||||
ParseNode *&node)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (T_VARCHAR == node->type_
|
||||
if ((T_HEX_STRING == node->type_ || T_VARCHAR == node->type_)
|
||||
&& CHARSET_INVALID != charset_type) {
|
||||
ParseNode *charset_node = new_node(&allocator, T_CHARSET, 0);
|
||||
ParseNode *varchar_node = new_non_terminal_node(&allocator, T_VARCHAR, 2, charset_node, node);
|
||||
@ -1567,6 +1567,7 @@ int ObPlanCacheValue::handle_varchar_charset(ObCharsetType charset_type,
|
||||
varchar_node->str_len_ = node->str_len_;
|
||||
varchar_node->raw_text_ = node->raw_text_;
|
||||
varchar_node->text_len_ = node->text_len_;
|
||||
varchar_node->type_ = T_VARCHAR;
|
||||
|
||||
node = varchar_node;
|
||||
}
|
||||
|
Reference in New Issue
Block a user