Why limit CutOverLockTimeoutSeconds to 10 seconds?
- Vorherrschende Sprache
- Go
- Sterne
- 13.6k
- Forks
- 1.4k
- Ø Merge
- 2 Std. 31 Min.
- Gemergte PRs (30 T.)
- 4
Beschreibung
There's a command line flag (`-cut-over-lock-timeout-seconds`) which allows you to control how much time to wait for a lock when performing a cutover.
Why is this [limited to 10 seconds](https://github.com/github/gh-ost/blob/5294ab6bd10c36bba7cd37e5739e6cab70b2cfda/go/base/context.go#L341)? Seems like [MySQL defaults to 50 sec](https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_lock_wait_timeout) and allows much larger values.
It would be nice for potentially high-load tables to increase this lock wait timeout. We've had to limit database load temporarily in order to perform cut-overs due to the short lock wait timeout.
Beitragsleitfaden
Rechercherichtung
Beginne bei go/base/context.go rund um das verlinkte CutOverLockTimeoutSeconds-Limit und verfolge, wie das Flag -cut-over-lock-timeout-seconds validiert und verwendet wird. Ermittle, wie größere Werte für MySQL-Cutovers unter hoher Last akzeptiert werden sollten, und überprüfe anschließend, dass das konfigurierte Timeout über das aktuelle Limit von 10 Sekunden hinaus eingehalten wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go, mysql
- Bereich
- cli, databases
- Issue-Typ
- Feature
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100