FLUSH TABLES WITH READ LOCK Locks the entire cluster

Description

FLUSH TABLES WITH READ LOCK on one node appears to lock other nodes as well.

In a 3 nodes Galera cluster if I do FTWRL on one node and apply simple DDL or DML on other nodes I don't have any locking.

To reproduce the issue I used a trivial mysqlslap test:

  1. on my node 1
    $ mysqlslap --concurrency=10 --iterations=200 --number-int-cols=2 --number-char-cols=3 --auto-generate-sql -uroot -h127.0.0.1 -P10021

With this as soon as FTWRL is executed on another node, say 3, all threads of mysqlslap on node 1 will hang with something like:

{{

}}

At this point, writing to any other node is also impossible, statements will hang, and so the whole cluster is locked.

FTWRL is used for backups, for example, so potentially a backup can lock the whole cluster.

Environment

Linux 64

Assignee

Nirbhay Choubey

Reporter

Claudio Nanni

Labels

None

Components

Affects versions

Priority

Critical
Configure