Help:Extension:Translate/Process flow in MediaWiki jobs
This page describes:
- The various jobs present in the Translate extension
- What happens when a page is marked for translation
- What happens when a translation unit is translated
Note that the diagrams on the page can be downloaded, and opened using DrawIO/diagrams.net to modify.
Glossary
editSee Help:Extension:Translate/Glossary .
Please ensure that you are familiar with the following terminology:
- message collection
- message group
- message handle
- message index
- source page
- state
- translatable page
- translatable page source
- translation page
- translation unit
- translation unit identifier
- translation unit marker
- translation unit page
- translation unit source
What happens when
editPage is marked for translation
editTranslation unit is translated
editMediaWiki Jobs in Translate
editThis section describes the relevant jobs involved when a page is marked for translation or a translation unit is translated.
TranslationsUpdateJob
edit- Creates and runs the
MessageUpdateJob
(one per translation unit) to update the translation unit pages in the source language and to optionally fuzzy its translations. - Regenerates the group stats for the page.
- Creates the
TranslateRenderJob
for all the translation pages and adds them to the job queue. - Add a
MessageIndexRebuildJob
to the job queue.
This job is added to the job queue when a page is marked for translation.
MessageUpdateJob
editUpdates the translation unit pages with the new translation text.
This job is added to the job queue by TranslationsUpdateJob
when a page is marked for translation.
TranslateRenderJob
editWhen a page is marked for translation, a TranslateRenderJob
is created for each translation page.
They update the translation pages with the latest content of page that was marked for translation.
When a translation unit is translated, a TranslateRenderJob
is created to update the translation page for the language in which the translation unit was translated.
- This job is added to the job queue when a translation unit page is modified.
- This job is added to the job queue when a page is marked for translation.
MessageIndexRebuildJob
editUsed to rebuild the MessageIndex
with information regarding the latest page marked for translation.
De-duplication is in place for this job to ensure that only once instance of this job is present in the job queue at any given time.
This job is added to the job queue by TranslationsUpdateJob
when a page is marked for translation.
MessageGroupStatesUpdaterJob
editHandles automatic state changes for message groups for a specific language.
This job is added to the job queue when a translation unit page is modified.