Changeset: d965f8f9b5b3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d965f8f9b5b3
Branch: default
Log Message:
Merge with Dec2023 branch.
diffs (98 lines):
diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -4333,7 +4333,7 @@ rel2bin_select(backend *be, sql_rel *rel
sql_exp *e = en->data;
prop *p;
- if ((p=find_prop(e->p, PROP_HASHCOL)) != NULL) {
+ if ((p=find_prop(e->p, PROP_HASHCOL)) != NULL && !is_anti(e)) {
sql_idx *i = p->value.pval;
int oldvtop = be->mb->vtop, oldstop = be->mb->stop,
oldvid = be->mb->vid;
@@ -5143,6 +5143,7 @@ update_check_ukey(backend *be, stmt **up
*/
if (!isNew(k)) {
stmt *nu_tids = stmt_tdiff(be, dels, u_tids, NULL); /*
not updated ids */
+ nu_tids = stmt_project(be, nu_tids, dels);
list *lje = sa_list(sql->sa);
list *rje = sa_list(sql->sa);
@@ -5256,6 +5257,7 @@ update_check_ukey(backend *be, stmt **up
/* s should be empty */
if (!isNew(k)) {
stmt *nu_tids = stmt_tdiff(be, dels, u_tids, NULL); /*
not updated ids */
+ nu_tids = stmt_project(be, nu_tids, dels);
assert (updates);
h = updates[c->c->colnr];
diff --git a/sql/test/BugTracker-2024/Tests/All
b/sql/test/BugTracker-2024/Tests/All
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2024/Tests/All
@@ -0,0 +1,2 @@
+inequality-hash-issue-7426
+pkey-check-failed-7425
diff --git a/sql/test/BugTracker-2024/Tests/SingleServer
b/sql/test/BugTracker-2024/Tests/SingleServer
new file mode 100644
diff --git a/sql/test/BugTracker-2024/Tests/inequality-hash-issue-7426.test
b/sql/test/BugTracker-2024/Tests/inequality-hash-issue-7426.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2024/Tests/inequality-hash-issue-7426.test
@@ -0,0 +1,34 @@
+
+statement ok
+CREATE TABLE t1(c1 INTEGER)
+
+statement ok
+CREATE TABLE t0(c0 BOOL, c1 INTEGER)
+
+statement ok
+INSERT INTO t1 (c1) VALUES (0)
+
+statement ok
+CREATE UNIQUE INDEX i0 ON t0(c1 , c0 )
+
+statement ok
+INSERT INTO t0 (c0, c1) VALUES (true, 0)
+
+query III
+SELECT t0.c0, t0.c1, t1.c1 FROM t1 INNER JOIN t0 ON t0.c0
+----
+1
+0
+0
+
+query I
+SELECT (t0.c1) IS NOT NULL FROM t1 INNER JOIN t0 ON t0.c0
+----
+1
+
+query III
+SELECT t0.c0, t0.c1, t1.c1 FROM t1 INNER JOIN t0 ON t0.c0 WHERE (t0.c1) IS
NOT NULL
+----
+1
+0
+0
diff --git a/sql/test/BugTracker-2024/Tests/pkey-check-failed-7425.test
b/sql/test/BugTracker-2024/Tests/pkey-check-failed-7425.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2024/Tests/pkey-check-failed-7425.test
@@ -0,0 +1,17 @@
+statement ok
+create table ttt(id int primary key,k int NOT NULL DEFAULT '0')
+
+statement ok
+insert into ttt values(1,3),(2,3),(3,3),(4,3),(5,3)
+
+statement ok
+update ttt set k=k+1 where id=3
+
+statement ok
+delete from ttt where id=2
+
+statement ok
+update ttt set id = 3 where id = 3
+
+statement ok
+drop table ttt
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]