Changeset: 30d9d27e2f66 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=30d9d27e2f66
Modified Files:
sql/backends/monet5/sql.c
sql/server/sql_mvc.c
sql/server/sql_mvc.h
Branch: 2PC
Log Message:
Write aborts in WAL on rollback
diffs (39 lines):
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -336,6 +336,7 @@ SQLabort(Client cntxt, MalBlkPtr mb, Mal
if (sql->session->active) {
RECYCLEdrop(cntxt);
+ mvn_abort(sql);
mvc_rollback(sql, 0, NULL);
}
return msg;
diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c
--- a/sql/server/sql_mvc.c
+++ b/sql/server/sql_mvc.c
@@ -380,6 +380,13 @@ mvc_persistcommit(mvc *m, int chain, con
}
int
+mvc_abort(mvc *m)
+{
+ sql_trans *tr = m->session->tr;
+ return sql_trans_precommit(tr);
+}
+
+int
mvc_rollback(mvc *m, int chain, const char *name)
{
int res = 0;
diff --git a/sql/server/sql_mvc.h b/sql/server/sql_mvc.h
--- a/sql/server/sql_mvc.h
+++ b/sql/server/sql_mvc.h
@@ -141,6 +141,7 @@ extern void mvc_commit_finish(mvc *m, in
extern int mvc_commit(mvc *c, int chain, const char *name);
extern int mvc_precommit(mvc *m, int chain, const char *name, lng id);
extern int mvc_persistcommit(mvc *m, int chain, const char *name, lng id);
+extern int mvc_abort(mvc *m);
extern int mvc_rollback(mvc *c, int chain, const char *name);
extern int mvc_release(mvc *c, const char *name);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list