Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upGitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
Move from: #548 so we could base the changes off of stable. Based on information from @piki
Original comment:
In this PR, we are trying to solve a few issues when backup and restore with binary backups
Use pigz instead of gzip in backup-util
Backup-util uses gzip which is super slow to compress large database files. It becomes the performance bottleneck when we backup binary backup. We will use pigz instead which is multi-threaded and way faster. (3 to 4 times faster for backing up large database)
Backup-util tool should always pointing to sql master for binary backup restore
This is an issue in current binary backup restore. Backup-util restores mysqldump from any instance in cluster because it connects to sql master through connection. Binary backup restore has different mechanism. We need to connect to the Sql master node and copy files there instead. Customer does not necessarily restore on the MySql Master node. (@lildude mentioned that we tell customers to restore from the MySQL master node, but seems the old logical backup restore works with non-master node so make this change to make sure it maintains same behavior)
/cc @github/ghes-infrastructure