summaryrefslogtreecommitdiff
path: root/innobase/trx
diff options
context:
space:
mode:
authorheikki@hundin.mysql.fi <>2003-07-03 21:25:55 +0300
committerheikki@hundin.mysql.fi <>2003-07-03 21:25:55 +0300
commit2a1f87ff726219123d54dfb856956bff6ea2cbf7 (patch)
tree4bae1e813c986da0cdde9b78f41247a806c985d0 /innobase/trx
parent3f4f339f15748a348d085da9c3d17658d01b4af3 (diff)
downloadmariadb-git-2a1f87ff726219123d54dfb856956bff6ea2cbf7.tar.gz
Many files:
Remove potential starvation of a full log buffer flush: only flush up to the lsn which was the largest at the time when we requested the full log buffer flush os0sync.h, os0sync.c: Fix a bug in os_event on Unix: even though we signaled the event, some threads could continue waiting if the event became nonsignaled quickly again; this made group commit less efficient than it should be
Diffstat (limited to 'innobase/trx')
-rw-r--r--innobase/trx/trx0trx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/innobase/trx/trx0trx.c b/innobase/trx/trx0trx.c
index 095a9df9082..0dead50264b 100644
--- a/innobase/trx/trx0trx.c
+++ b/innobase/trx/trx0trx.c
@@ -1524,6 +1524,8 @@ trx_commit_complete_for_mysql(
dulint lsn = trx->commit_lsn;
ut_a(trx);
+
+ trx->op_info = (char*)"flushing log";
if (srv_flush_log_at_trx_commit == 0) {
/* Do nothing */
@@ -1547,6 +1549,8 @@ trx_commit_complete_for_mysql(
ut_a(0);
}
+ trx->op_info = (char*)"";
+
return(0);
}