Changeset: e8b2775129a6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e8b2775129a6
Added Files:
        sql/test/BugTracker-2024/Tests/pkey-check-failed-7425.test
Modified Files:
        sql/backends/monet5/rel_bin.c
        sql/test/BugTracker-2024/Tests/All
Branch: Dec2023
Log Message:

fixed bug 7425 and added test


diffs (47 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
@@ -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
--- a/sql/test/BugTracker-2024/Tests/All
+++ b/sql/test/BugTracker-2024/Tests/All
@@ -1,1 +1,2 @@
 inequality-hash-issue-7426
+pkey-check-failed-7425
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 -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to