Page MenuHomePhabricator

MediaWiki installation error: MediaWiki\Storage\PageEditStash::getAndWaitForStashValue Error: 1105 Percona-XtraDB-Cluster prohibits use of GET_LOCK with pxc_strict_mode = ENFORCING
Open, Needs TriagePublic

Description

Reproduction Instructions
Following this, specifically, the Manual Installation instructions with up to date MediaWiki:

  • Use PHP 7.3 and up to date MediaWiki (see version below)
  • Choose MySQL as Database type in the Connect to database step
  • Enter in applicable Database information
  • See error in the final "Install" phase:
Creating main page with default content... failed

Could not insert main page: A database query error has occurred. Did you forget to run your application's database schema updater after upgrading? Query: SELECT GET_LOCK('<HASH>', 30) AS lockstatus Function: MediaWiki\Storage\PageEditStash::getAndWaitForStashValue Error: 1105 Percona-XtraDB-Cluster prohibits use of GET_LOCK with pxc_strict_mode = ENFORCING (<MYSQL_ADDRESS>:<PORT>)

Some things that I've tried
I have also looked through Percona documentation and discussion boards but was not able to find a viable solution. Due to system restrictions, I am unable to set the pxc_strict_mode=PERMISSIVE as some forums seem to suggest.

Event Timeline

Aklapper renamed this task from MediaWiki Percona installation pxc_strict_mode work-around to MediaWiki installation error: MediaWiki\Storage\PageEditStash::getAndWaitForStashValue Error: 1105 Percona-XtraDB-Cluster prohibits use of GET_LOCK with pxc_strict_mode = ENFORCING.Mar 30 2020, 2:02 PM
Aklapper updated the task description. (Show Details)

Hi @Nnaka1, thanks for taking the time to report this! Which exact MediaWiki version is this about?

Hi, @Aklapper, thanks for the reply and hope you're staying healthy! I am currently using MediaWiki 1.34.0. From what I found in other forums, there seemed to be folks who saw this in older versions (<=1.31).

Anomie added subscribers: CCicalese_WMF, Anomie.

1105 Percona-XtraDB-Cluster prohibits use of GET_LOCK with pxc_strict_mode = ENFORCING

Apparently Percona's fork of MySQL is not fully compatible with MySQL under certain configurations.

@CCicalese_WMF: This is basically the bug that T226857: Provide capability for a DB to be added in an extension was originally filed to try to fix, and the solution here is probably to do T226857: Provide capability for a DB to be added in an extension so something like https://github.com/MWStake/PerconaDB can be used.

This is great! Thanks for the suggestion, @Anomie!

I actually have a similar question to that which appears in https://phabricator.wikimedia.org/T226857 and I want to make sure that I'm fully understanding:
By setting MW_INSTALL_PATH to my mediawiki root with the extension cloned to the extensions directory, composer will "autoload" the extension at MediaWiki install time (i.e. before LocalSettings.php is generated).
And this autoloading will enable for a new "percona" selection at DB selection stage for the web installer.
Is this correct?

nnikkhoui subscribed.

Untagging Core Platform. Tracking work for this in T226857.