Details
-
New Feature
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
None
Description
During the commit stage of a large transaction, it may cost too much time to write binlog cache and block all subsequent transactions for a long time. One possible solution of this issue is to write the binlog of the large transaction to a temporary file and then rename it to the next new binlog file.
We need to reserve some space for format description event, gtid list event, binlog checkpoint event and gtid event. After writing the binlog cache, we lock LOCK_log and write the aforementioned events. If the reserved space doesn't match the required size, we delete the temporary file and fallback to original commit path(Write binlog cache with LOCK_log locked).
Attachments
Issue Links
- blocks
-
MDEV-33066 Tencent requested features
- Open
- is duplicated by
-
MDEV-32014 optimizing of binlogging of large transactions
- Closed