summaryrefslogtreecommitdiff
path: root/sql/ha_innodb.cc
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 /sql/ha_innodb.cc
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 'sql/ha_innodb.cc')
-rw-r--r--sql/ha_innodb.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/sql/ha_innodb.cc b/sql/ha_innodb.cc
index 2cc64b18706..8edec984962 100644
--- a/sql/ha_innodb.cc
+++ b/sql/ha_innodb.cc
@@ -915,7 +915,7 @@ innobase_flush_logs(void)
DBUG_ENTER("innobase_flush_logs");
- log_write_up_to(ut_dulint_max, LOG_WAIT_ONE_GROUP, TRUE);
+ log_buffer_flush_to_disk();
DBUG_RETURN(result);
}
@@ -3538,7 +3538,7 @@ ha_innobase::create(
the InnoDB data dictionary get out-of-sync if the user runs
with innodb_flush_log_at_trx_commit = 0 */
- log_write_up_to(ut_dulint_max, LOG_WAIT_ONE_GROUP, TRUE);
+ log_buffer_flush_to_disk();
innobase_table = dict_table_get(norm_name, NULL);
@@ -3613,7 +3613,7 @@ ha_innobase::delete_table(
the InnoDB data dictionary get out-of-sync if the user runs
with innodb_flush_log_at_trx_commit = 0 */
- log_write_up_to(ut_dulint_max, LOG_WAIT_ONE_GROUP, TRUE);
+ log_buffer_flush_to_disk();
/* Tell the InnoDB server that there might be work for
utility threads: */
@@ -3683,7 +3683,7 @@ innobase_drop_database(
the InnoDB data dictionary get out-of-sync if the user runs
with innodb_flush_log_at_trx_commit = 0 */
- log_write_up_to(ut_dulint_max, LOG_WAIT_ONE_GROUP, TRUE);
+ log_buffer_flush_to_disk();
/* Tell the InnoDB server that there might be work for
utility threads: */
@@ -3755,7 +3755,7 @@ ha_innobase::rename_table(
the InnoDB data dictionary get out-of-sync if the user runs
with innodb_flush_log_at_trx_commit = 0 */
- log_write_up_to(ut_dulint_max, LOG_WAIT_ONE_GROUP, TRUE);
+ log_buffer_flush_to_disk();
/* Tell the InnoDB server that there might be work for
utility threads: */