Page MenuHomePhabricator

MediaWiki should use the FlaggedRevs "stable parser cache" when handling a stable revision
Open, Needs TriagePublic

Description

The FlaggedRevs extension manages its own segment of the ParserCache. This cache is only used when viewing the stable revision of a page, and when this is not the same as the latest revision. The cached ParserOutput is stored under a stable-pcache prefix in the same store as the latest revision. All access to these objects should be through the FlaggedRevsParserCache object.

When a MediaWiki API needs to retrieve the ParserOutput for these stable revisions, however, it will use the RevisionOutputCache which is normally for older revisions, has a much lower cache hit rate, etc. This means that any API requests on a stable pageview will cause double parsing and an duplicate entry in two caches. In T304813 we worked around this for a single API, but a generalized fix would be better. An attempt at this was begun in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/773361 and https://gerrit.wikimedia.org/r/c/mediawiki/extensions/FlaggedRevs/+/773446 , but we decided against this due to time pressures and risks. Ideally, someone can pick this work up again in the future and the kludges in FlaggedRevs and Kartographer can be removed.

Event Timeline

Change 788301 had a related patch set uploaded (by Awight; author: Awight):

[mediawiki/extensions/Kartographer@master] Update TODO with new task number

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

Change 788301 merged by jenkins-bot:

[mediawiki/extensions/Kartographer@master] Update TODO with new task number

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