Percona XtraDB and wsrep_convert_lock_to_trx

I have a question relating to a 3 node Percona XtraDB cluster for a Magento online store. The percona cluster is running on 3 Ubuntu nodes (5.4.0-126-generic #142-Ubuntu) and the version of percona is the latest from the repos. (percona-xtradb-cluster 1:8.0.29-21-1.focal).
In order to get Magento to work I have always had to have the cluster set to a PERMISSIVE state (SET GLOBAL pxc_strict_mode=PERMISSIVE;) mainly because Magento issues GET_LOCK and RELEASE_LOCK on certain tables.

Now I have noticed that there is a wsrep variable in the percona documentation (that comes from galera I guess) as follows:


which looked like something promising to try. However, it does not appear to be an available variable on my percona instance - I have tried setting the variable directly:

SET GLOBAL wsrep_convert_LOCK_to_trx=1;

But I get:
Error Code: 1193. Unknown system variable ‘wsrep_convert_LOCK_to_trx’

I’ve also tried setting it up in the configuration file, but again the variable is not recognised:
#try turning on LOCKS to TRANSACTION conversion

Should this variable be available as specified in the documentation for Percona 8 or has it been deprecated / removed?

Many thanks for any help on this topic.

1 Like

GET_LOCK("foo", 10) is not the same as LOCK TABLE foo. The former creates a lock on a randomly named object, much like a typical semaphore. The later will lock a specific table, named ‘foo’. These are two entirely different concepts. wsrep_convert_lock_to_trx was used to convert the later into transactions, not the former.

wsrep_convert_lock_to_trx was indeed removed but not from the docs. It is a documentation bug.

1 Like

Thx Profile - matthewb - Percona Community Forum for the reply - greatly appreciated!

Ok - this all makes sense and thx for the clarity of your answer - it’s good to know I hadn’t missed something and it is just a documentation bug.

Many thx!

1 Like