Page MenuHomePhabricator

change-propogation service retries jobs that set RunnableJob::allowsRetries() false after a timeout
Open, Needs TriagePublicBUG REPORT

Description

In practise this doesn't matter too much, as most jobs are retryable. Just filing a bug for the record

In WMF's job queue, the logic that handles RunnableJob::allowsRetries() lives in MediaWiki\Extension\EventBus\JobExecutor. If the HTTP connection dies before this code is executed (for example, due to apache config or the timeout config in change-propogation), then change-propagation service will retry this job. This is pretty unexpected. If you really don't want your jobs to be retried, you have to set that in the change-propagation config as well as implementing allowsRetries()

Event Timeline

Change 1007994 had a related patch set uploaded (by Brian Wolff; author: Brian Wolff):

[mediawiki/core@master] Add comment warning about how allowRetries() ignored during timeout

https://gerrit.wikimedia.org/r/1007994

Change 1007994 merged by jenkins-bot:

[mediawiki/core@master] Add comment warning about how allowRetries() ignored during timeout

https://gerrit.wikimedia.org/r/1007994