wiki.techinc.nl/includes/poolcounter
David Causse ce511406e0 ParserCache: add an option to explicitly trigger links update
Triggering an opportunistic LinksUpdate on every cache miss of the
current revision might not be appropriate in some cases.
Some functions like ContentHandler::getParserOutputForIndexing might
be called after all LinksUpdates but if these functions do explicitely
disallow populating the parser cache via OPT_NO_UPDATE_CACHE we might
enter a case where involved jobs would trigger themselves forever.

It is happening in the case of the CirrusSearch extension that listens
to LinksUpdate and is relying on
ContentHandler::getParserOutputForIndexing to fetch the parser output.

Introduce a new option ParserOutputAccess::OPT_LINKS_UPDATE to be
more intentional on whether such cascading LinksUpdate might occur
or not on cache misses.

Change the default to not trigger a LinksUpdate on every cache miss
and enable it only when rendering the article view (Article::view).
It does not seem ideal that this behavior is owned by the ParserCache
and further refactoring might be needed to separate these concerns.

Bug: T329842
Change-Id: Ib3c3ca935f316ea880ff6c6b393fa80166e42bd3
2023-05-16 11:32:55 +02:00
..
PoolCounter.php poolcounter: Create PoolCounterFactory service class 2023-01-19 07:33:58 +00:00
PoolCounterClient.php poolcounter: Create PoolCounterFactory service class 2023-01-19 07:33:58 +00:00
PoolCounterConnectionManager.php poolcounter: Create PoolCounterFactory service class 2023-01-19 07:33:58 +00:00
PoolCounterFactory.php poolcounter: Create PoolCounterFactory service class 2023-01-19 07:33:58 +00:00
PoolCounterNull.php poolcounter: Merge Client and ConnectionManager from extension repo 2022-12-14 20:28:14 +00:00
PoolCounterRedis.php PoolCounterRedis: Fix wrong cast, locks weren't being released 2023-02-01 18:04:19 +00:00
PoolCounterWork.php poolcounter: Create PoolCounterFactory service class 2023-01-19 07:33:58 +00:00
PoolCounterWorkViaCallback.php Replace some usages of MWException 2023-01-26 00:10:34 +00:00
PoolWorkArticleView.php poolcounter: Clean up file headers and @ingroup 2022-09-29 19:45:09 +00:00
PoolWorkArticleViewCurrent.php ParserCache: add an option to explicitly trigger links update 2023-05-16 11:32:55 +02:00
PoolWorkArticleViewOld.php poolcounter: Clean up file headers and @ingroup 2022-09-29 19:45:09 +00:00