GitHub's Online Schema-migration Tool for MySQL
Go to file
Shlomi Noach 421ab0fc83 woohoo, logic complete
- Introduced `SwapTablesTimeoutSeconds`; `RENAME` is limited by this timeout
- If `RENAME` fails (due to the above), we throttle and retry
- `SwapTablesAtomic()` sets `lock_wait_timeout` and notifies with connection id
- `GrabVoluntaryLock()` intentionally grabs (and later releases) voluntary lock. It notifies when it is taken and awaits instructions as for when it could be released.
- `IssueBlockingQueryOnVoluntaryLock()` does what it says. It notifies with its connection_id so that it can be easily traced
- `stopWritesAndCompleteMigrationOnMasterViaLock()` does the thang. Oh dear this was agonizing and the code is a pain to look at, though under the limitations I do believe it is as clean as I could hope for.
2016-04-22 19:46:34 -07:00
go woohoo, logic complete 2016-04-22 19:46:34 -07:00
vendor added vendor packages 2016-04-01 16:04:27 +02:00
build.sh minor refactoring; fixed license comments 2016-03-24 15:11:56 +01:00
LICENSE Initial commit 2016-03-21 11:08:52 +01:00
README.md Initial commit 2016-03-21 11:08:52 +01:00

gh-osc

GitHub's Online Schema Change for MySQL