Page MenuHomePhabricator

How to re-run claimed jobs?
Closed, InvalidPublic

Description

Due to T124196 We have to store Jobs in redis, where it seems that lack of memory space caused some job been deleted random for more RAM .

There are lots of claimed jobs but apparently nothing actually running. How can I convert the job type and then re-run these job?

php /wiki/maintenance/showJobs.php --group
refreshLinks: 8196 queued; 55966 claimed (55966 active, 0 abandoned); 0 delayed
deleteLinks: 0 queued; 1 claimed (1 active, 0 abandoned); 0 delayed
htmlCacheUpdate: 0 queued; 9 claimed (9 active, 0 abandoned); 0 delayed
enotifNotify: 0 queued; 1 claimed (1 active, 0 abandoned); 0 delayed
recentChangesUpdate: 0 queued; 1 claimed (1 active, 0 abandoned); 0 delayed
refreshLinksPrioritized: 0 queued; 1282 claimed (1282 active, 0 abandoned); 0 delayed
refreshLinksDynamic: 0 queued; 918 claimed (918 active, 0 abandoned); 0 delayed
cirrusSearchIncomingLinkCount: 0 queued; 0 claimed (0 active, 0 abandoned); 5050 delayed
cirrusSearchLinksUpdate: 0 queued; 5489 claimed (5489 active, 0 abandoned); 0 delayed
cirrusSearchElasticaWrite: 0 queued; 0 claimed (0 active, 0 abandoned); 11348 delayed
EchoNotificationDeleteJob: 0 queued; 18 claimed (18 active, 0 abandoned); 0 delayed

Event Timeline

Marostegui added a subscriber: Marostegui.

I have removed the DBA tag as I believe this is not for the DBAs, if I am wrong, please feel free to re-add it.

There are lots of claimed jobs but apparently nothing actually running. How can I convert the job type and then re-run these job?

Hi @Zoglun. Wikimedia Phabricator/Maniphest is for bug reports and enhancement requests. If you have questions on how to do something, please ask on the MediaWiki Support Desk (or on a dedicated project/extension talk page if existing). Thanks!

After some trial, we found that jobs been claimed but not run is reproduce-able when: php runJobs.php exit unusual, such as ssh connection lost, background php process killed due to high load, and etc.

Is there any mechanism to get these claimed jobs back to queued status so that it can get processed by runJobs.php again?