Changeset: de61612d9102 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/de61612d9102
Added Files:
        sql/test/BugTracker-2025/Tests/7739-left-join-attr-missing.test
Modified Files:
        sql/server/rel_unnest.c
        sql/test/BugTracker-2025/Tests/All
Branch: Dec2025
Log Message:

fixed issue # 7739, missing attribute result from left join.


diffs (59 lines):

diff --git a/sql/server/rel_unnest.c b/sql/server/rel_unnest.c
--- a/sql/server/rel_unnest.c
+++ b/sql/server/rel_unnest.c
@@ -4071,6 +4071,8 @@ rewrite_fix_count(visitor *v, sql_rel *r
                                }
                        }
                        exps = list_join(rel_projections(v->sql, rel->l, NULL, 
1, 1), rexps);
+                       if (!list_empty(rel->attr))
+                               exps = append(exps, exp_ref(v->sql, 
rel->attr->h->data));
                        rel = rel_project(v->sql->sa, rel, exps);
                        set_processed(rel);
                        r->used |= rewrite_fix_count_used;
diff --git a/sql/test/BugTracker-2025/Tests/7739-left-join-attr-missing.test 
b/sql/test/BugTracker-2025/Tests/7739-left-join-attr-missing.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2025/Tests/7739-left-join-attr-missing.test
@@ -0,0 +1,17 @@
+statement ok
+CREATE TABLE t0(c0 DOUBLE)
+
+statement ok
+CREATE TABLE t1(c0 DOUBLE)
+
+statement ok rowcount 1
+INSERT INTO t0(c0) VALUES(0.9)
+
+statement ok rowcount 1
+INSERT INTO t1(c0) VALUES(0.2);
+
+query R
+SELECT * FROM t0 LEFT JOIN LATERAL (VALUES ((((t0.c0))))) ON (EXISTS (SELECT 
count(*) FROM t1))
+----
+0.900
+0.900
diff --git a/sql/test/BugTracker-2025/Tests/All 
b/sql/test/BugTracker-2025/Tests/All
--- a/sql/test/BugTracker-2025/Tests/All
+++ b/sql/test/BugTracker-2025/Tests/All
@@ -66,18 +66,19 @@ 7718-crash
 7719-crash-in-complex-query
 7720-coalesce
 7722-recusive-cte-with-error-crash
+7725-crash-find-rel-ref
 7730-generate-series-month-int
 7732-table-exp-issue
 7734-epoch-missing-cast
 7735-crossproduct-update
 7736-scale-reduction-crash
 7737-join-order
+7739-left-join-attr-missing
 7741_missing_rel_name
 7744_opt_null_in_where
+7745-antijoin-bad-mal-gen
 7748-update-returning-subquery-crash
 7753-like-in-projection
-7725-crash-find-rel-ref
-7745-antijoin-bad-mal-gen
 7752-union-sum
 7756-anti-join-null
 7759-replace-wrong-error
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to