[xml bugfix] xmlattributes parameter err info tips fix
This commit is contained in:
		| @ -1353,12 +1353,17 @@ int ObRawExprResolverImpl::process_xml_attributes_node(const ParseNode *node, Ob | ||||
|     ret = OB_ERR_UNEXPECTED; | ||||
|     LOG_WARN("num child invalid", K(ret), K(node_ptr->num_child_)); | ||||
|   } else { | ||||
|     int attributes_count = 0; | ||||
|     do { | ||||
|       ObRawExpr *para_expr = NULL; | ||||
|       if (T_LINK_NODE != node_ptr->type_) { | ||||
|         ++attributes_count; | ||||
|         const ParseNode *expr_node = node_ptr; | ||||
|         CK (OB_NOT_NULL(expr_node)); | ||||
|         OZ(recursive_resolve(expr_node, para_expr)); | ||||
|         if (OB_ERR_XMLELEMENT_ALIASED == ret) { | ||||
|           LOG_USER_ERROR(OB_ERR_XMLELEMENT_ALIASED, attributes_count); | ||||
|         } | ||||
|         CK(OB_NOT_NULL(para_expr)); | ||||
|         for (int i = 0; OB_SUCC(ret) && i < para_expr->get_param_count(); i++) { | ||||
|           OZ(func_expr->add_param_expr(para_expr->get_param_expr(i))); | ||||
| @ -1366,9 +1371,13 @@ int ObRawExprResolverImpl::process_xml_attributes_node(const ParseNode *node, Ob | ||||
|         break; | ||||
|       } else if (T_LINK_NODE == node_ptr->type_ && | ||||
|                   node_ptr->children_[0]->num_child_ == 2) { | ||||
|         ++attributes_count; | ||||
|         const ParseNode *expr_node = node_ptr->children_[0]; | ||||
|         CK (OB_NOT_NULL(expr_node)); | ||||
|         OZ(recursive_resolve(expr_node, para_expr)); | ||||
|         if (OB_ERR_XMLELEMENT_ALIASED == ret) { | ||||
|           LOG_USER_ERROR(OB_ERR_XMLELEMENT_ALIASED, attributes_count); | ||||
|         } | ||||
|         CK(OB_NOT_NULL(para_expr)); | ||||
|         node_ptr = node_ptr->children_[1]; | ||||
|         for (int i = 0; OB_SUCC(ret) && i < para_expr->get_param_count(); i++) { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 obdev
					obdev