We want to migrate the async jobs to use PHP7, and to be able to do so job-by-job. In order to do this, we need to:
* Pick a couple jobs to test first, change their configuration in changeprop to sending the PHP_ENGINE=php7 cookie
* Once we're convinced by both the latencies and the overall performance, switch the other jobs progressively
* Check that logs/errors are collected
* Check that metrics are collected
* Amend the apache configuration to remove the need for the cookie
* Revert the addition of the cookie to changeprop
Job list, roughly we'll migrate in that order:
[x] updateBetaFeaturesUserCounts (510703)
[x] RecordLintJob (511436)
[x] htmlCacheUpdate (511649)
[x] wikibase-addUsagesForPage (511913)
[x] ORESFetchScoresJob (512858)
[x] RecentChangesUpdate() (Hight traffic, user visible)(512872)
[x] refreshLinks (too much traffic)
[x] cirrusSearchCheckerJob (Tricky. It runs from a cron script scheduling bulk jobs with a set of pageIds and uses delay 1,2,3,4... to scatter the jobs in time
[x] cirrusSearchDeleteArchive
[x] cirrusSearchDeletePages
[x] cirrusSearchElasticaWrite
[x] cirrusSearchIncomingLinkCount
[x] cirrusSearchLinksUpdate
[x] cirrusSearchLinksUpdatePrioritized
[x] cirrusSearchOtherIndex
[x] cdnPurge
[x] categoryMembershipChange
[x] ThumbnailRender
[x] constraintsRunCheck
[x] webVideoTranscode
[x] webVideoTranscodePrioritized
The following jobs will be migrated as we are migrating jobrunners to serve via PHP7 only:
[] refreshLinksPrioritized (too much traffic)
[] TranslationsUpdateJob
[] TranslateRenderJob
[] TranslatablePageMoveJob
[] TranslateDeleteJob
[] translationNotificationJob
[] wikibase-UpdateUsagesForPage (super high traffic)
[] ChangeNotification (hight rate)
[] CognateCacheUpdateJob (basically a wrapper over HTMLCacheUpdatejob)
[] flaggedrevs_CacheUpdate
[] deleteLinks
[] EchoNotificationDeleteJob
[] wikibase-InjectRCRecords
[] AssembleUploadChunks
[] BounceHandlerJob
[] CentralAuthCreateLocalAccountJob
[] enotifNotify
[] gwtoolsetGWTFileBackendCleanupJob
[] LocalPageMoveJob
[] LocalRenameUserJob
[] LoginNotifyChecks
[] MassMessageJob
[] MassMessageSubmitJob
[] MassMessageServerSideJob
[] MessageGroupStatesUpdaterJob
[] MessageIndexRebuildJob
[] PublishStashedFile
[] GlobalUserPageLocalJobSubmitJob
[] renameUser
[] UpdateRepoOnDelete
[] UpdateRepoOnMove
[] EchoNotificationJob
[] cirrusSearchMassIndex
[] sendMail
[] deletePage
[] refreshLinksDynamic
[] LocalSharedHelpPageCacheUpdateJob
[] cirrusSearchJobChecker
[] constraintsTableUpdate
[] synchroniseThreadArticleData
[] compileArticleMetadata
[] clearUserWatchlist
[] BounceHandlerNotificationJob
[] MessageGroupStatsRebuildJob
[] cpjobqueue.error
[] gwtoolsetUploadMetadataJob
[] CognateLocalJobSubmitJob
[] TTMServerMessageUpdateJob
[] LocalRenameUserJob
[] userGroupExpiry
[] crosswikiSuppressUser
[] securePollPopulateVoterList
[] CentralAuthUnattachUserJob
[] LocalGlobalUserPageCacheUpdateJob
[] globalUsageCachePurge
[] activityUpdateJob
mediawiki/includes/jobqueue/jobs/
```
1 LoginNotifyChecks
2 RecordLintJob
3 EchoNotificationDeleteJob
8 cirrusSearchIncomingLinkCount
8 enotifNotify
10 activityUpdateJob
58 cirrusSearchLinksUpdatePrioritized
63 recentChangesUpdate
64 refreshLinks
72 categoryMembershipChange
81 cirrusSearchLinksUpdate
165 htmlCacheUpdate
2000 cirrusSearchCheckerJob
```
Graphs:
* https://grafana.wikimedia.org/d/000000400/jobqueue-eventbus?orgId=1