Changeset: 125b0d18c6be for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/125b0d18c6be
Added Files:
        sql/test/BugTracker-2025/Tests/7632-crash-leftjoin-exists.test
Modified Files:
        sql/server/rel_unnest.c
        sql/test/BugTracker-2025/Tests/All
Branch: default
Log Message:

Fixing bug #7632. Added test.


diffs (37 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
@@ -3761,7 +3761,6 @@ rewrite_exists(visitor *v, sql_rel *rel,
                                        le = exp_ref(v->sql, a);
                                        le->card = CARD_MULTI; /* mark as multi 
value, the real attribute is introduced later */
                                        append(join->attr, a);
-                                       assert(is_project(rel->op) || depth);
                                        if ((is_project(rel->op) || depth))
                                                return le;
                                }
diff --git a/sql/test/BugTracker-2025/Tests/7632-crash-leftjoin-exists.test 
b/sql/test/BugTracker-2025/Tests/7632-crash-leftjoin-exists.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2025/Tests/7632-crash-leftjoin-exists.test
@@ -0,0 +1,13 @@
+statement ok
+CREATE TABLE t0(c0 INT)
+
+query II
+SELECT * FROM t0 INNER JOIN (VALUES (1)) ON EXISTS (SELECT ALL * FROM t0)
+----
+
+query II
+SELECT * FROM t0 LEFT JOIN (VALUES (1)) ON EXISTS (SELECT ALL * FROM t0)
+----
+
+statement ok
+drop table t0
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
@@ -6,3 +6,4 @@ 7621_count_case_crash
 7623_update_returning
 7625_missing_temporary_view_types
 7626_sum_max_const
+7632-crash-leftjoin-exists
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to