Page MenuHomePhabricator

TranslateRenderJob: "Oops, this should not happen!"
Closed, ResolvedPublic

Description

Spotted in production:

[
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/extensions/Translate/tag/PageTranslationHooks.php",
    "line": 159,
    "function": "run",
    "class": "TranslateRenderJob",
    "type": "->",
    "args": []
  },
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/extensions/Translate/tag/PageTranslationHooks.php",
    "line": 139,
    "function": "updateTranslationPage",
    "class": "PageTranslationHooks",
    "type": "::",
    "args": [
      "TranslatablePage",
      "string",
      "User",
      "integer",
      "string"
    ]
  },
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/includes/Hooks.php",
    "line": 204,
    "function": "onSectionSave",
    "class": "PageTranslationHooks",
    "type": "::",
    "args": [
      "WikiPage",
      "User",
      "WikitextContent",
      "string",
      "integer",
      "NULL",
      "NULL",
      "integer",
      "NULL"
    ]
  },
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/includes/page/WikiPage.php",
    "line": 1963,
    "function": "run",
    "class": "Hooks",
    "type": "::",
    "args": [
      "string",
      "array"
    ]
  },
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/extensions/Translate/utils/MessageUpdateJob.php",
    "line": 44,
    "function": "doEditContent",
    "class": "WikiPage",
    "type": "->",
    "args": [
      "WikitextContent",
      "string",
      "integer",
      "boolean",
      "User"
    ]
  },
  {
    "file": "/srv/mediawiki/php-1.27.0-wmf.3/includes/jobqueue/JobRunner.php",
    "line": 180,
    "function": "run",
    "class": "MessageUpdateJob",
    "type": "->",
    "args": []
  },
  {
    "file": "/srv/mediawiki/rpc/RunJobs.php",
    "line": 42,
    "function": "run",
    "class": "JobRunner",
    "type": "->",
    "args": [
      "array"
    ]
  }
]

Event Timeline

demon created this task.Oct 26 2015, 5:20 PM
demon raised the priority of this task from to Normal.
demon updated the task description. (Show Details)
demon added a subscriber: demon.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 26 2015, 5:20 PM
Krinkle renamed this task from TranslateRenderJob: "This should not happen" to TranslateRenderJob: "Oops, this should not happen!".Nov 11 2015, 8:51 PM
Krinkle set Security to None.
Krinkle added a subscriber: Krinkle.
Krinkle removed a subscriber: Krinkle.Nov 11 2015, 8:51 PM
aaron raised the priority of this task from Normal to High.Dec 11 2015, 1:24 PM
Nikerabbit lowered the priority of this task from High to Normal.Dec 11 2015, 3:23 PM

17 events today, 12 events two days ago. Does not justify high priority imho.

The latest events correspond with these log actions, the latter has same time.

  • 14:23, 11 December 2015 Piramidion (talk | contribs) marked Wikimedia Russia for translation
  • 14:21, 11 December 2015 Piramidion (talk | contribs) removed Wikimedia Russia from translation
aaron added a subscriber: aaron.Dec 11 2015, 6:06 PM

Should these just result in the job just calling setError() and returning false? Maybe it could no longer be an exception?

This probably can't happen anymore from MessageUpdateJobs (when marking for translation, at least) once https://gerrit.wikimedia.org/r/#/c/281698/ and https://gerrit.wikimedia.org/r/#/c/282695/ reaches the wikis (will be deployed on next update). When pages are marked for translation, the render job will only be run once per language and the value of marked tag is also not cached during reads so an invalid value cached before the updates are not used.

Glaisher closed this task as Resolved.May 28 2016, 4:21 PM

The exception message was recently modified so this error message won't occur anymore. Note that there would've been a spike of this earlier this month on group0 wikis due to a recently introduced change but that was quickly fixed.
Let's hope that this is now fixed (after the above patches) and close this task. If it does occur again, I guess someone will open another task with the new error message.