fix mysqltest

This commit is contained in:
hanr881
2023-05-15 08:46:25 +00:00
committed by ob-robot
parent bf4c0d2553
commit 8fa5fdc6e7
2 changed files with 13 additions and 0 deletions

View File

@ -119,6 +119,18 @@ int ObExprCollectionConstruct::cg_expr(ObExprCGCtx &op_cg_ctx,
return ret; return ret;
} }
bool ObExprCollectionConstruct::is_match_type(const ObObj &element_obj, pl::ObPLType type)
{
bool is_same = true;
if (pl::PL_NESTED_TABLE_TYPE == element_obj.get_meta().get_extend_type() ||
pl::PL_VARRAY_TYPE == element_obj.get_meta().get_extend_type()) {
is_same = pl::PL_NESTED_TABLE_TYPE == type || pl::PL_VARRAY_TYPE == type;
} else {
is_same = element_obj.get_meta().get_extend_type() == type;
}
return is_same;
}
int ObExprCollectionConstruct::eval_collection_construct(const ObExpr &expr, int ObExprCollectionConstruct::eval_collection_construct(const ObExpr &expr,
ObEvalCtx &ctx, ObEvalCtx &ctx,
ObDatum &expr_datum) ObDatum &expr_datum)

View File

@ -50,6 +50,7 @@ public:
const ObRawExpr &raw_expr, ObExpr &rt_expr) const override; const ObRawExpr &raw_expr, ObExpr &rt_expr) const override;
static int eval_collection_construct(const ObExpr &expr, ObEvalCtx &ctx, ObDatum &expr_datum); static int eval_collection_construct(const ObExpr &expr, ObEvalCtx &ctx, ObDatum &expr_datum);
static bool is_match_type(const ObObj &element_obj, pl::ObPLType type);
struct ExtraInfo : public ObIExprExtraInfo struct ExtraInfo : public ObIExprExtraInfo
{ {