Page MenuHomePhabricator

DatabaseMentorStore::setMentorForUser needs to be safe to call on GET requests
Closed, ResolvedPublic

Description

Background

Now with mentor/mentee relationship managed in a separate database table (to be able to run more queries on it, see parent), we need to make sure setting mentor is safe in get context – it can happen when user first loads their homepage, for instance.

Task objective

Make DatabaseMentorStore::setMentorForUser to be safe to call in GET context, as documented - probably by creating our own job.

Notes

This should happen before we start to use the new store in production, as it will probably trigger warnings about master connection used in GET context.

Event Timeline

Change 678638 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[mediawiki/extensions/GrowthExperiments@master] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Change 678638 merged by jenkins-bot:

[mediawiki/extensions/GrowthExperiments@master] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Change 679002 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Change 679002 abandoned by Urbanecm:

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

Reason:

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

Change 679002 restored by Urbanecm:

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Change 679002 abandoned by Urbanecm:

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

Reason:

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

Change 679002 restored by Urbanecm:

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Change 679002 merged by Urbanecm:

[mediawiki/extensions/GrowthExperiments@wmf/1.37.0-wmf.1] Make DatabaseMentorStore::setMentorForUser safe to call in GET context

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

Mentioned in SAL (#wikimedia-operations) [2021-04-14T17:56:36Z] <urbanecm@deploy1002> Synchronized php-1.37.0-wmf.1/extensions/GrowthExperiments/: ce44792: 84107c5: GrowthExperiments backports related to DatabaseMentorStore (T279957; T279959) (duration: 01m 55s)