Changeset: df132ff0f0dd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/df132ff0f0dd
Modified Files:
        sql/server/rel_exp.c
        sql/test/BugTracker-2025/Tests/7616_join_reordering_3.test
Branch: nested
Log Message:

keep type of nested structures on exp_copy of exp_values
approved output


diffs (28 lines):

diff --git a/sql/server/rel_exp.c b/sql/server/rel_exp.c
--- a/sql/server/rel_exp.c
+++ b/sql/server/rel_exp.c
@@ -3445,9 +3445,10 @@ exp_copy(mvc *sql, sql_exp * e)
                else if (e->r) {
                        sql_var_name *vname = (sql_var_name*) e->r;
                        ne = exp_param_or_declared(sql->sa, vname->sname, 
vname->name, &e->tpe, e->flag);
-               } else if (e->f)
+               } else if (e->f) {
                        ne = exp_values(sql->sa, exps_copy(sql, e->f));
-               else
+                       ne->tpe = e->tpe;
+               } else
                        ne = exp_atom_ref(sql->sa, e->flag, &e->tpe);
                break;
        case e_psm:
diff --git a/sql/test/BugTracker-2025/Tests/7616_join_reordering_3.test 
b/sql/test/BugTracker-2025/Tests/7616_join_reordering_3.test
--- a/sql/test/BugTracker-2025/Tests/7616_join_reordering_3.test
+++ b/sql/test/BugTracker-2025/Tests/7616_join_reordering_3.test
@@ -13,7 +13,7 @@ project (
 | | | table("sys"."y") [ "y"."a1" NOT NULL UNIQUE, "y"."p" NOT NULL UNIQUE ],
 | | | select (
 | | | | table("sys"."x") [ "x"."a1" NOT NULL UNIQUE, "x"."a3" NOT NULL UNIQUE, 
"x"."p" NOT NULL UNIQUE ]
-| | | ) [ ("x"."a3" NOT NULL UNIQUE) FILTER "sys"."contains"(varchar[ [ 
varchar(3) "bar" ]] NOT NULL, boolean(1) "true") ]
+| | | ) [ ("x"."a3" NOT NULL UNIQUE) FILTER "sys"."contains"( [ varchar(3) 
"bar" ], boolean(1) "true") ]
 | | ) [ ("y"."a1" NOT NULL UNIQUE) = ("x"."a1" NOT NULL UNIQUE) ]
 | ) [ "y"."a1" NOT NULL UNIQUE as "foo_x4"."a1", "sys"."sql_mul"("y"."p" NOT 
NULL, "x"."p" NOT NULL) NOT NULL as "foo_x4"."p" ]
 ) [ "foo_x4"."a1" NOT NULL UNIQUE, "foo_x4"."p" NOT NULL ]
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to