HomePhabricator

Split message index rebuild off of TranslationsUpdateJob and enable…

Description

Split message index rebuild off of TranslationsUpdateJob and enable deduplication

This patch aims to finally solve task T221119. The front caching already fully
mitigated the issue of translators not being able to translate. The remaining
issue is lock wait timeout exceptions that cause logspam and can leave some
state stale.

This patch solves that by splitting message index rebuild off of
TranslationsUpdateJob. This requires that nothing in that job must require
the message index to be up to date. To my knowledge this is the case currently.
This allows the message index rebuild to fail safely.

MessagesIndexRebuildJob is improved by enabling automatic retries as well as
deduplication. Deduplication should help to avoid some redundant work in case
a lot of pages are marked for translation in a short period of time. This
assumes that when the MessageIndexRebuildJob starts executing, it gets the
latest message group state. Added local cache clearing to ensure that. Callers
are responsible for updating the global cache first.

Bug: T221119
Change-Id: I17db19f42f8586f2431a91b07975496095df1d25

Details

Provenance
NikerabbitAuthored on May 20 2020, 12:29 PM
abi_Committed on May 24 2020, 6:52 AM
Parents
rETRAf95221e98fe4: Suppress XSS false positive
Branches
Unknown
Tags
Unknown
ChangeId
I17db19f42f8586f2431a91b07975496095df1d25