Details
-
Type:
Task
-
Status: Closed
-
Priority:
Minor
-
Resolution: Not a Bug
-
Fix Version/s: None
-
Component/s: None
-
Labels:
Description
Depending on the setup and the choice of speed vs integrity in case of a server crash, configs need sync_binlog=1.
This slows down the server, but actually unnecessarily so. The setting apparently causes separate fsync() calls in various places in the code (binlog, relay log/index, possibly the master.info file), and that's ridiculous.
Can someone (Monty?) please fix this, and make the logic such that we get only a single fsync() per commit?
If this is a logistical problem given the XtraDB/InnoDB plugin, I can cope with one extra fsync() in the main server code in addition to the one in InnoDB... that can be a good intermediate step and would already reduce the overhead and slow-down significantly.
Thanks!
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
Re: Multiple fsync()s when sync_binlog=N (>0)
Arjen,
Could you please point at the offending fsync() calls or provide some evidence that there are multiple syncs being done for one transaction? (i.e. what has led you to suspect that there are more fsync calls done when necessary?)