Page MenuHomePhabricator

UpdateImplementationsJob not being run on beta cluster
Closed, ResolvedPublicBUG REPORT

Description

The WikiLambda extension has been running reliably on the beta cluster for a few months. Recently, for the first time, we added a couple jobs. The jobs are instantiated and pushed onto a job queue group in the normal way. They are working in local dev environments, but apparently are not running at all in our beta deployment. Log statements show the instantiation of these jobs as expected, but log statements from within their run() methods have never appeared.

We have the normal configuration declarations for these jobs are in our extension.json, like this example:

"JobClasses": {
    "myExtDoSomething": "MediaWiki\\Extension\\MyExt\\Job\\DoSomethingJob"
},

as documented in the Extensions section here.

Steps to replicate the issue (include links if applicable):

What happens?:

  • Job instantiation gets logged (MediaWiki\Extension\WikiLambda\Jobs\UpdateImplementationsJob::__construct Job created!)
  • but job running does not get logged (expected log message : INFO: MediaWiki\Extension\WikiLambda\Jobs\UpdateImplementationsJob::run Job being run!)
  • Also expect to see an update in the content of the WikiFunctions page, and this does not happen.

What should have happened instead?:

The last 2 bullets just above should also happen.

Other information :

Event Timeline

@DMartin-WMF this task (and my T325786) prompted me to go digging, find T332211: deployment-docker-changeprop01: `worker died, restarting` and after much hair-pulling, fix some config files — I now see MediaWiki\Extension\WikiLambda\Jobs\UpdateImplementationsJob::run Job being run! (e.g.)

Can you confirm this has been resolved?

@TheresNoTime - follow-up question related to this ticket: Although UpdateImplementationsJob is now running, our extension's other job, CacheTesterResultsJob, still does not appear to be running. In your work on the config files, did you change or add something specifically related to UpdateImplementationsJob (and which maybe we need to change similarly for CacheTesterResultsJob)?

@TheresNoTime - follow-up question related to this ticket: Although UpdateImplementationsJob is now running, our extension's other job, CacheTesterResultsJob, still does not appear to be running. In your work on the config files, did you change or add something specifically related to UpdateImplementationsJob (and which maybe we need to change similarly for CacheTesterResultsJob)?

I'm afraid not, it was quite a generic change :-( I can take a look in a bit, do you have some steps I should follow to reliably reproduce the issue?

@TheresNoTime - Thanks for offering to take a look! Turns out I was wrong above; in fact CacheTesterResultsJob does appear to be running. (There was some confusion about how our logging was configured on beta.) So, never mind :-). I might have one other question for you a bit later, though.