[xml] update xmltype using clob in pl bugfix

This commit is contained in:
obdev
2023-07-11 13:12:38 +00:00
committed by ob-robot
parent 4dd0e1e962
commit 63af839d05
3 changed files with 20 additions and 20 deletions

View File

@ -56,7 +56,7 @@ int ObExprExtractValue::calc_result_typeN(ObExprResType &type,
ret = OB_ERR_INVALID_TYPE_FOR_OP;
LOG_USER_ERROR(OB_ERR_INVALID_TYPE_FOR_OP, "-", "-");
LOG_WARN("inconsistent datatypes", K(ret), K(ob_obj_type_str(in_type)));
} else {
}
for (int8_t i = 1; i < param_num && OB_SUCC(ret); i++) {
ObObjType param_type = types[i].get_type();
if (param_type == ObNullType) {
@ -68,7 +68,6 @@ int ObExprExtractValue::calc_result_typeN(ObExprResType &type,
ret = OB_ERR_INVALID_XPATH_EXPRESSION;
}
}
}
if (OB_SUCC(ret)) {
type.set_type(ObVarcharType);

View File

@ -55,7 +55,7 @@ int ObExprExtractXml::calc_result_typeN(ObExprResType &type,
ret = OB_ERR_INVALID_TYPE_FOR_OP;
LOG_USER_ERROR(OB_ERR_INVALID_TYPE_FOR_OP, "-", "-");
LOG_WARN("inconsistent datatypes", K(ret), K(ob_obj_type_str(in_type)));
} else {
}
for (int8_t i = 1; i < param_num && OB_SUCC(ret); i++) {
ObObjType param_type = types[i].get_type();
if (param_type == ObNullType) {
@ -67,7 +67,6 @@ int ObExprExtractXml::calc_result_typeN(ObExprResType &type,
ret = OB_ERR_INVALID_XPATH_EXPRESSION;
}
}
}
if (OB_SUCC(ret)) {
type.set_sql_udt(ObXMLSqlType);

View File

@ -53,6 +53,8 @@ int ObExprUpdateXml::calc_result_typeN(ObExprResType &type,
ret = OB_ERR_INVALID_TYPE_FOR_OP;
LOG_USER_ERROR(OB_ERR_INVALID_TYPE_FOR_OP, "-", "-");
LOG_WARN("inconsistent datatypes", K(ret), K(ob_obj_type_str(types[0].get_type())));
}
if (OB_FAIL(ret)) {
} else {
bool has_ns_str = (param_num - 1) % 2 == 1;
int64_t xpath_value_end = has_ns_str ? param_num - 1 : param_num;