Reduce the number of aborted connections on donor during state transfer
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
MySQL patches by Codership |
New
|
Wishlist
|
Unassigned | |||
Percona XtraDB Cluster moved to https://jira.percona.com/projects/PXC | Status tracked in 5.6 | |||||
5.5 |
Confirmed
|
Wishlist
|
Unassigned | |||
5.6 |
Confirmed
|
Wishlist
|
Unassigned |
Bug Description
This is not a bug but a feature request. And I am not sure if it should be reported against Galera or WSREP project.
At the moment (galera 23.2.2) the state transfer (SST or IST) immediately aborts all connections on the donor. This causes the client (app) to either retry the transaction/query or just fail. It would be great to add a (configurable) grace period to allow existing connections to finish:
1) Donor receives SST or IST request.
2) Donor immediately stops accepting new connections but does not kill existing queries/
3) After a grace period (5-10 secs by default), all current connections are killed and state transfer proceeds.
This would allow a typical web app to gracefully finish processing current request and seamlessly transition connections to another server in the cluster either using in-app fail over or HAproxy or something else.
Hope this makes sense :)
no longer affects: | galera |
Changed in codership-mysql: | |
importance: | Undecided → Wishlist |
Sounds nice, but requires substantial research. Not a 1-day hack.