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]