[prev in list] [next in list] [prev in thread] [next in thread]
List: monetdb-sql-checkins
Subject: [Monetdb-sql-checkins] sql/src/storage/bat bat_storage.mx, , 1.19,
From: Stefan Manegold <stmane () users ! sourceforge ! net>
Date: 2008-06-28 9:32:07
Message-ID: E1KCWmv-0001qz-B6 () mail ! sourceforge ! net
[Download RAW message or body]
Update of /cvsroot/monetdb/sql/src/storage/bat
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12154/src/storage/bat
Modified Files:
bat_storage.mx
Log Message:
propagated changes of Friday Jun 27 2008 - Saturday Jun 28 2008
from the SQL_2-24 branch to the development trunk
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008/06/27 - nielsnes:
src/storage/bat/bat_storage.mx,1.16.2.4(SQL_2-24,Stable_DailyBuild-28)
fixed concurency bug. We use a special set op empty update bats, these need
to be replaced by new bats before inserts. That wasn't done correctly.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Index: bat_storage.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/storage/bat/bat_storage.mx,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- bat_storage.mx 22 Jun 2008 22:06:51 -0000 1.19
+++ bat_storage.mx 28 Jun 2008 09:32:05 -0000 1.20
@@ -1048,19 +1048,23 @@
if (BUNlast(ups) > BUNfirst(ups)) {
if (BUNlast(ups) > ups->batInserted && store_nr_active > 1) {
BAT *cu = temp_descriptor(obat->ubid);
+
+ if (isEUbat(cu)) {
+ temp_destroy(obat->ubid);
+ obat->ubid = temp_copy(cu->batCacheid, FALSE);
+ bat_destroy(cu);
+ cu = temp_descriptor(obat->ubid);
+ }
copy_inserted(cu, ups);
bat_destroy(cu);
}
if (store_nr_active == 1) { /* flush all */
void_replace_bat(cur, ups, TRUE);
/* cleanup the old deltas */
- if (BUNfirst(ups) != ups->batInserted) {
- BAT *cu = temp_descriptor(obat->ubid);
- bat_clear(cu);
- BATcommit(cu);
- bat_destroy(cu);
- }
- bat_clear(ups);
+ temp_destroy(obat->ubid);
+ obat->ubid = e_ubat(cur->ttype);
+ temp_destroy(cbat->ubid);
+ cbat->ubid = e_ubat(cur->ttype);
} else {
BATcommit(ups);
}
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Monetdb-sql-checkins mailing list
Monetdb-sql-checkins@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic