Page MenuHomePhabricator

Split CentralAuthUtilityService into multiple smaller services
Open, Needs TriagePublic

Description

Converting CentralAuthUtils to use DI in T270828 was a good first step in making CA use dependency injection, but it still throws a bunch of unrelated tools into one massive service. This has the potential to cause issues similar to T273296 in the future. I would propose splitting it up to multiple smaller services each doing one thing. From a very quick look this could look something like:

  • one service for database connections
  • one for session handling, tokens either on this one or a separate one
  • unsure about misc stuff, this includes setP3P, memcKey, getKeyValueUponExistence, and (non-forced) account autocreation

Event Timeline

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

[mediawiki/extensions/CentralAuth@master] Split database access to separate service

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

Change 710321 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] Split database access to separate service

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

Change 713358 had a related patch set uploaded (by DannyS712; author: DannyS712):

[mediawiki/extensions/CentralAuth@master] Inject and use CentralAuthDatabaseManager

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

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

[mediawiki/extensions/SecurePoll@master] Use CentralAuthDatabaseManager to access CA dbs

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

Change 714196 merged by jenkins-bot:

[mediawiki/extensions/SecurePoll@master] Use CentralAuthDatabaseManager to access CA dbs

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

Change 713358 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] Start to inject and use CentralAuthDatabaseManager

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

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

[mediawiki/extensions/CentralAuth@master] UtilityService: drop getCentralReplicaDB

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

Change 715298 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] UtilityService: drop getCentralReplicaDB

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

Change 720483 had a related patch set uploaded (by Zabe; author: Zabe):

[mediawiki/extensions/CentralAuth@master] Introduce CentralAuthSessionManager

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