Details
-
Task
-
Status: Stalled (View Workflow)
-
Major
-
Resolution: Unresolved
Description
LOAD DATA INFILE is intended for fast, bulk imports into MySQL. This works pretty well.
However, when replicating the content of the file is saved to bin logs on the master, but on the slave, it is:
1. downloaded into the relay logs [normal processing]
2. extracted from the relay logs into a temporary file
3. re-imported from the temporary file into the slave
4. the temporary file is removed.
This extra step 2 generates unneeded I/O and can slow the process on the downstream slaves.
Optimizing it might be good for replication performance when the loaded data sizes are large.
One thought is to convert the LOAD DATA INFILE content when writing the bin logs into a "normal RBR binlog stream”,
so that on the slave it would be processed normally. Given this behavior is different to the default behavior it
would probably need to be optionally enabled with a specific config option on the master.
This feature request is created to document a previous discussion on that topic with the MariaDB engineering team.