Page MenuHomePhabricator

Sort out the documentation for Wikifamily setups (aka the missed deprecation of wgSharedDB)
Closed, ResolvedPublic

Description

For many years we have been recommending people use Shared Databases for their wiki family setups compared to dealing with the complexities of setting up E:CentralAuth.

It's just been flagged on IRC that wgSharedDB has been deprecated since 2012/1.21.0 (rMWac3a0a58a7113197849241581629b501ddd3f1da @tstarling) which was missed on wiki until it's documentation was updated.

I guess we now need to decide which is the best method forward and update documentation appropriately

Related Objects

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

We recognise the use case for a simple setup for sharing accounts in a family and intent for this to remain supported, just as it has remained supported throughout ActorStore and CentralId refactoring. But, we may change how this works internally, possibly making it even simpler to configure.

Per team triage meeting, Aaron will write a specific proposal/plan.

This has been used and recommended during all these years, and apparently it was never an issue. So why having this deprecated? And what is the plan proposed by aaron?

When upgrade from REL1_37 to REL1_39, the warning actually blocks update.php to run and requires --skip-config-validation to run
update.php worked fine after skipping though without any other issue

php maintenance/update.php
Some of your configuration settings caused a warning:

* SharedDB is deprecated: since 1.21 In new code, use the $wiki parameter to
  LBFactory::getMainLB() to access remote databases. Using
  LBFactory::getMainLB() allows the shared database to reside on separate
  servers to the wiki's own database, with suitable configuration of
  $wgLBFactoryConf

Please correct the issue before running update.php again.
If you know what you are doing, you can bypass this check
using --skip-config-validation.

That deprecation sounds like it was intended for developers using the variable, not for users setting it?

Change 877289 had a related patch set uploaded (by Krinkle; author: Krinkle):

[mediawiki/core@master] rdbms: Remove deprecation mark for $wgSharedDB

https://gerrit.wikimedia.org/r/877289

Krinkle triaged this task as High priority.
Krinkle added a subscriber: aaron.

Recently, the maintenance/update.php script was changed to disallow upgrades of third-party wikis if it detects that a deprecated settings is in-use.

Raising priority of this task because our incorrect (but otherwise-innocent) documentation comment on this setting, is thus now preventing upgrades.

Since this setting is not, and never has, been deprecated for its primary purpose, I propose we remove the deprecation comment so that people are able to upgrade again without issue.

Change 877289 merged by jenkins-bot:

[mediawiki/core@master] rdbms: Remove deprecation mark for $wgSharedDB

https://gerrit.wikimedia.org/r/877289

Change 879267 had a related patch set uploaded (by Majavah; author: Krinkle):

[mediawiki/core@REL1_39] rdbms: Remove deprecation mark for $wgSharedDB

https://gerrit.wikimedia.org/r/879267

Change 879267 merged by jenkins-bot:

[mediawiki/core@REL1_39] rdbms: Remove deprecation mark for $wgSharedDB

https://gerrit.wikimedia.org/r/879267