[MDEV-468] Galera: Server does not honor metadata locking (even inside the same node) Created: 2012-08-20 Updated: 2012-09-20 Resolved: 2012-08-20 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 5.5.25-galera |
| Type: | Bug | Priority: | Major |
| Reporter: | Elena Stepanova | Assignee: | Seppo Jaakola |
| Resolution: | Not a Bug | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||
| Description |
|
Normally, in the scenario above the 2nd connection would wait for a metadata lock on t1 until con1 finishes the transaction, or lock_wait_timeout occurs, whichever happens first. However, if server is running as a Galera node, ALTER TABLE is executed right away, despite the locks that con1 holds; and the transaction in con1 will be rejected. Explicit BEGIN/COMMIT here are just to make the test deterministic, in fact it happens just as well on a single-statement transaction with autocommit. Limitations page (http://www.codership.com/wiki/doku.php?id=limitations) mentions LOCK statements, but does not say that internal locking is also not supported. Besides, this kind of scenario does not involve any other nodes. bzr version-info
|
| Comments |
| Comment by Seppo Jaakola [ 2012-08-20 ] |
|
Galera processes all DDL statements under "Total Order Isolation", where the DDL statement is replicated up front and with high priority. |
| Comment by Seppo Jaakola [ 2012-08-20 ] |
|
This is expected behaviour of DDL processing in Galera Cluster |