Changeset: 1de58824d181 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1de58824d181
Modified Files:
        sql/test/BugTracker-2020/Tests/All
Branch: mtest
Log Message:

Merge with default branch.


diffs (119 lines):

diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -1966,6 +1966,7 @@ clear_delta(sql_trans *tr, sql_delta *ba
 {
        BAT *b;
        BUN sz = 0;
+       int isnew = 0;
 
        if (bat->cached) {
                bat_destroy(bat->cached);
@@ -1995,6 +1996,8 @@ clear_delta(sql_trans *tr, sql_delta *ba
                        }
                        bat_destroy(b);
                }
+       } else {
+               isnew = 1;
        }
        if (bat->uibid) {
                b = temp_descriptor(bat->uibid);
@@ -2012,7 +2015,8 @@ clear_delta(sql_trans *tr, sql_delta *ba
                }
                bat_destroy(b);
        }
-       bat->cleared = 1;
+       if (!isnew)
+               bat->cleared = 1;
        bat->ibase = 0;
        bat->cnt = 0;
        bat->ucnt = 0;
@@ -2439,6 +2443,7 @@ tr_update_delta( sql_trans *tr, sql_delt
                temp_destroy(obat->ibid);
                obat->ibid = cbat->bid;
                obat->cnt = cbat->cnt;
+               cbat->bid = cbat->ibid = 0;
        } else  if (BUNlast(ins) > 0 || cbat->cleared) {
                if ((!cbat->ibase && BATcount(ins) > SNAPSHOT_MINSIZE)){
                        /* swap cur and ins */
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -6679,7 +6679,8 @@ sql_trans_clear_table(sql_trans *tr, sql
        sql_column *c = n->data;
        BUN sz = 0, nsz = 0;
 
-       t->cleared = 1;
+       if (!isNew(t))
+               t->cleared = 1;
        t->base.wtime = t->s->base.wtime = tr->wtime = tr->wstime;
        c->base.wtime = tr->wstime;
 
diff --git a/sql/test/BugTracker-2020/Tests/All 
b/sql/test/BugTracker-2020/Tests/All
--- a/sql/test/BugTracker-2020/Tests/All
+++ b/sql/test/BugTracker-2020/Tests/All
@@ -39,3 +39,4 @@ savepoints_crash_mserver5_1.Bug-7021
 savepoints_crash_mserver5_2.Bug-7021
 transaction_with_unreleased_savepoint.Bug-7022
 view_with_aggr_column.Bug-7023
+delete-transaction-loose-inserts.Bug-7024
diff --git 
a/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.sql 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.sql
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.sql
@@ -0,0 +1,7 @@
+START TRANSACTION;
+CREATE TABLE b (c integer);
+DELETE FROM b;
+INSERT INTO b VALUES (1);
+COMMIT;
+SELECT * FROM b;
+DROP TABLE b;
diff --git 
a/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.err
 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.err
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.err
@@ -0,0 +1,12 @@
+stderr of test 'delete-transaction-loose-inserts.Bug-7024` in directory 
'sql/test/BugTracker-2020` itself:
+
+
+# 11:13:06 >  
+# 11:13:06 >  "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-33866" "--port=38978"
+# 11:13:06 >  
+
+
+# 11:13:06 >  
+# 11:13:06 >  "Done."
+# 11:13:06 >  
+
diff --git 
a/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.out
 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.out
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2020/Tests/delete-transaction-loose-inserts.Bug-7024.stable.out
@@ -0,0 +1,26 @@
+stdout of test 'delete-transaction-loose-inserts.Bug-7024` in directory 
'sql/test/BugTracker-2020` itself:
+
+
+# 11:13:06 >  
+# 11:13:06 >  "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-33866" "--port=38978"
+# 11:13:06 >  
+
+#START TRANSACTION;
+#CREATE TABLE b (c integer);
+#DELETE FROM b;
+[ 0    ]
+#INSERT INTO b VALUES (1);
+[ 1    ]
+#COMMIT;
+#SELECT * FROM b;
+% sys.b # table_name
+% c # name
+% int # type
+% 1 # length
+[ 1    ]
+#DROP TABLE b;
+
+# 11:13:06 >  
+# 11:13:06 >  "Done."
+# 11:13:06 >  
+
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to