[MDEV-19995] Spider XA operations may lock spider_xa_member for a long time, limiting concurrency Created: 2019-07-09 Updated: 2023-09-20 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - Spider |
| Affects Version/s: | 10.3, 10.4 |
| Fix Version/s: | 10.4 |
| Type: | Bug | Priority: | Major |
| Reporter: | Leandro Pacheco (Inactive) | Assignee: | Yuchen Pei |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Description |
|
Some spider XA operations, most critically XA PREPARE, through either explicit or internal XA, keep the mysql.spider_xa_member locked while executing commands on backends. Considering the case of XA PREPARE (through spider_internal_xa_prepare):
This behavior limits throughput by latency and in the worst case (#3) may block other transactions for a long time. Other functions which seem to do something similar are spider_internal_xa_commit_by_xid and spider_internal_xa_rollback_by_xid. |