Changeset: 2c28798e2cec for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2c28798e2cec
Modified Files:
sql/server/rel_exp.c
sql/server/rel_select.c
sql/test/BugTracker-2025/Tests/All
Branch: default
Log Message:
merged with march205
diffs (65 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
@@ -823,8 +823,6 @@ exp_ref(mvc *sql, sql_exp *e)
sql_exp *ne = exp_propagate(sql->sa, exp_column(sql->sa,
exp_relname(e), exp_name(e), exp_subtype(e), exp_card(e), has_nil(e),
is_unique(e), is_intern(e)), e);
if (ne) {
ne->nid = e->alias.label;
- assert(ne->nid);
- assert(!ne->nid || ne->alias.name);
ne->alias.label = ne->nid;
}
return ne;
diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -2410,7 +2410,7 @@ rel_in_exp(sql_query *query, sql_rel *re
int r_is_atoms = rlist ? exps_are_atoms(e->r) :
exp_is_atom(e->r);
int r_has_freevar = rlist ? exps_have_freevar(sql, e->r) :
exp_has_freevar(sql, e->r);
- if (rcard <= CARD_ATOM && (r_is_atoms || r_has_freevar ||
exp_has_freevar(sql, ls))) {
+ if ((rcard <= CARD_ATOM && r_is_atoms) || r_has_freevar ||
exp_has_freevar(sql, ls)) {
if ((exp_card(ls) == rcard) || rel->processed) /* bin
compare op */
return rel_select(sql->sa, rel, e);
diff --git a/sql/test/BugTracker-2025/Tests/7644_antijoin_crash.test
b/sql/test/BugTracker-2025/Tests/7644_antijoin_crash.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2025/Tests/7644_antijoin_crash.test
@@ -0,0 +1,15 @@
+statement ok
+CREATE TABLE database0_t2(c0 DOUBLE)
+
+statement ok
+CREATE TABLE database0_t4(c0 DOUBLE)
+
+statement ok
+INSERT INTO database0_t2 VALUES(1.0)
+
+statement ok
+INSERT INTO database0_t4 VALUES(1.0)
+
+query I
+SELECT * FROM database0_t2 WHERE NOT EXISTS(SELECT 1 FROM database0_t4 WHERE
(database0_t2.c0) IN (database0_t4.c0, database0_t2.c0))
+----
diff --git a/sql/test/BugTracker-2025/Tests/7646_leftjoin_crash.test
b/sql/test/BugTracker-2025/Tests/7646_leftjoin_crash.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2025/Tests/7646_leftjoin_crash.test
@@ -0,0 +1,7 @@
+statement ok
+CREATE TABLE t1(c0 INT)
+
+query II
+SELECT * FROM t1 LEFT JOIN (SELECT 1) ON EXISTS (SELECT (VALUES (1)));
+----
+
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
@@ -12,3 +12,5 @@ 7633-crash-leftjoin-any
7634_join_with_subquery_crash
7635_name_propagation_missing
7636_antijoin_crash
+7644_antijoin_crash
+7646_leftjoin_crash
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]