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
|
// update trace_id by server self
|
||||||
} else {
|
} else {
|
||||||
LOG_INFO("chestelew cleint not support flt");
|
|
||||||
// update trace_id in query granularity
|
// update trace_id in query granularity
|
||||||
if (sess.is_query_trc_granuality()) {
|
if (sess.is_query_trc_granuality()) {
|
||||||
FLT_BEGIN_TRACE();
|
FLT_BEGIN_TRACE();
|
||||||
|
@ -1545,7 +1545,7 @@ int ObPlanCacheValue::handle_varchar_charset(ObCharsetType charset_type,
|
|||||||
ParseNode *&node)
|
ParseNode *&node)
|
||||||
{
|
{
|
||||||
int ret = OB_SUCCESS;
|
int ret = OB_SUCCESS;
|
||||||
if (T_VARCHAR == node->type_
|
if ((T_HEX_STRING == node->type_ || T_VARCHAR == node->type_)
|
||||||
&& CHARSET_INVALID != charset_type) {
|
&& CHARSET_INVALID != charset_type) {
|
||||||
ParseNode *charset_node = new_node(&allocator, T_CHARSET, 0);
|
ParseNode *charset_node = new_node(&allocator, T_CHARSET, 0);
|
||||||
ParseNode *varchar_node = new_non_terminal_node(&allocator, T_VARCHAR, 2, charset_node, node);
|
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->str_len_ = node->str_len_;
|
||||||
varchar_node->raw_text_ = node->raw_text_;
|
varchar_node->raw_text_ = node->raw_text_;
|
||||||
varchar_node->text_len_ = node->text_len_;
|
varchar_node->text_len_ = node->text_len_;
|
||||||
|
varchar_node->type_ = T_VARCHAR;
|
||||||
|
|
||||||
node = varchar_node;
|
node = varchar_node;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user