[MDEV-9472] 13 node Galera cluster blocks all writes until affected node restart Created: 2016-01-26 Updated: 2019-12-12 Resolved: 2019-12-12 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Galera, Locking |
| Affects Version/s: | 10.1.10 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Bryan Seitz | Assignee: | Jan Lindström (Inactive) |
| Resolution: | Incomplete | Votes: | 0 |
| Labels: | galera | ||
| Environment: |
13 nodes running MariaDB 10.1.10 with Galera Layout: DC1: 3 nodes Each site minus DC5 has at least 4 async slaves hanging off a VIP, where only one of the 3 nodes at that site is active. (Priority LB method) |
||
| Attachments: |
|
| Description |
|
My 13 node cluster is used for DNS and therefor has a lot more reads than writes. The issue seems to stem from DNS slave nodes in each site which perform a lot of UPDATE statements on the same table. Each site has a VIP where only one of the 3 nodes at that site are active at one time. I will attach my error log and configuration file. |
| Comments |
| Comment by Bryan Seitz [ 2016-01-26 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Configuration File:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-01-26 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Attached error logs from two nodes that have been exhibiting the behavior. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-01-26 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I determine which node is locked/hung by looking in the error log at the last few entries. It will be the node with INNODB status/dumps. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-02-02 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I tried a few tweaks to see if they made any difference with no luck:
None of these seemed to have any effect and my cluster still deadlocks/hangs a few times a day. Sometimes it recovers on it's own which makes no sense. If there is some issue that works out on it's own why can't it be worked around and not cause a total write block. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-02-03 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Sample transaction in the InnoDB status dumps:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-02-04 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Another data point. I've seen it hang on writes for about 2500 seconds and then recover without intervention. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2016-02-27 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
bryan_seitz Do you, by any chance, have long running transactions? Its worth monitoring
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bryan Seitz [ 2016-02-27 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
These TX are all very fast as it houses a DNS database. I did seem to eliminate the blocking by reducing the number of writers (DNS Slaves) possibly writing the same data at the same time. I do however question why this confuses MariaDB/Galera. Shouldn't it sort that out ? |