FY2018-19 Q2 goal
What's new in celery 4: http://docs.celeryproject.org/en/v4.1.0/whatsnew-4.0.html
Halfak | |
Oct 17 2017, 9:43 PM |
F27009182: image.png | |
Nov 1 2018, 1:15 PM |
FY2018-19 Q2 goal
What's new in celery 4: http://docs.celeryproject.org/en/v4.1.0/whatsnew-4.0.html
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | • Ladsgroup | T178441 Upgrade celery to 4.1.0 for ORES | |||
Resolved | • Ladsgroup | T179524 Consistent TimeoutErrors when using Celery 4 | |||
Resolved | • Ladsgroup | T152012 Silence or address E_WOULDBLOCK warning | |||
Resolved | • Ladsgroup | T206333 Change default serializer of celery from pickle to json | |||
Resolved | • Ladsgroup | T206334 Make ScoreReqeust json seriablizable | |||
Resolved | Halfak | T215406 Rebuild all models with revscoring 2.3.3 | |||
Resolved | • Ladsgroup | T215671 Implement better defaults for autolabel utlity | |||
Resolved | • Ladsgroup | T209587 Migrate ores celery configs to celery 4 |
Mentioned in SAL (#wikimedia-operations) [2017-10-26T16:33:38Z] <awight@tin> Finished deploy [ores/deploy@971be22]: Push ORES w/ Celery 4 support to new cluster (take 3), T178441 (duration: 15m 33s)
Mentioned in SAL (#wikimedia-operations) [2017-10-26T16:43:06Z] <awight@tin> Started deploy [ores/deploy@971be22]: Push ORES w/ Celery 4 support to new cluster (try to rebuild venv), T178441
Mentioned in SAL (#wikimedia-operations) [2017-10-26T16:44:07Z] <awight@tin> Finished deploy [ores/deploy@971be22]: Push ORES w/ Celery 4 support to new cluster (try to rebuild venv), T178441 (duration: 01m 02s)
Mentioned in SAL (#wikimedia-operations) [2017-10-26T17:11:37Z] <awight@tin> Started deploy [ores/deploy@971be22]: ORES w/ revscoring 2 and Celery 4, T175180 T178441
Mentioned in SAL (#wikimedia-operations) [2017-10-26T17:14:57Z] <awight@tin> Finished deploy [ores/deploy@971be22]: ORES w/ revscoring 2 and Celery 4, T175180 T178441 (duration: 03m 20s)
Mentioned in SAL (#wikimedia-operations) [2017-10-26T17:16:49Z] <awight@tin> Started deploy [ores/deploy@971be22]: Rolling back scb1002, T175180 T178441
Mentioned in SAL (#wikimedia-operations) [2017-10-26T17:17:22Z] <awight@tin> Finished deploy [ores/deploy@971be22]: Rolling back scb1002, T175180 T178441 (duration: 00m 32s)
I'm seeing a new error,
http://0.0.0.0:8081/v3/scores/enwiki/123456/damaging
Traceback (most recent call last): File \"./ores/wsgi/routes/v3/scores.py\", line 28, in process_score_request score_response = scoring_system.score(score_request) File \"./ores/scoring_systems/scoring_system.py\", line 42, in score response = self._score(request) File \"./ores/scoring_systems/celery_queue.py\", line 194, in _score return super()._score(*args, **kwargs) File \"./ores/scoring_systems/scoring_system.py\", line 98, in _score inprogress_results=inprogress_results) File \"./ores/scoring_systems/celery_queue.py\", line 117, in _process_missing_scores request, missing_models, rev_id, root_cache) File \"/srv/deployment/ores/venv/lib/python3.4/site-packages/celery/app/task.py\", line 453, in delay return self.apply_async(args, kwargs) File \"/srv/deployment/ores/venv/lib/python3.4/site-packages/celery/app/task.py\", line 565, in apply_async **dict(self._get_exec_options(), **options) File \"/srv/deployment/ores/venv/lib/python3.4/site-packages/celery/app/base.py\", line 354, in send_task reply_to=reply_to or self.oid, **options File \"/srv/deployment/ores/venv/lib/python3.4/site-packages/celery/app/amqp.py\", line 297, in publish_task retry_policy=retry_policy, File \"/srv/deployment/ores/venv/lib/python3.4/site-packages/celery/utils/dispatch/signal.py\", line 166, in send response = receiver(signal=self, sender=sender, **named) File \"./ores/scoring_systems/celery_queue.py\", line 31, in update_sent_state task_id = properties['correlation_id'] KeyError: 'correlation_id'
Point of information, I botched the deployment and the above error was with Celery 3, so isn't related to this task.
Change 388065 had a related patch set uploaded (by Awight; owner: Awight):
[research/ores/wheels@master] Rebuild wheels, downgrade to Celery 3
Change 388066 had a related patch set uploaded (by Awight; owner: Awight):
[mediawiki/services/ores/deploy@master] Downgrade to Celery 3, bump other requirements
Change 388065 merged by Ladsgroup:
[research/ores/wheels@master] Rebuild wheels, downgrade to Celery 3
Change 388070 had a related patch set uploaded (by Awight; owner: Awight):
[research/ores/wheels@master] Remove wheels which are included as source
Change 388070 merged by Ladsgroup:
[research/ores/wheels@master] Remove wheels which are included as source
Change 388071 had a related patch set uploaded (by Awight; owner: Awight):
[mediawiki/services/ores/deploy@master] Remove local source packages from wheels
Change 388066 merged by Awight:
[mediawiki/services/ores/deploy@master] Downgrade to Celery 3, bump other requirements
Change 388071 merged by Awight:
[mediawiki/services/ores/deploy@master] Remove local source packages from wheels
I've created CELERY_4 branches for ores, wheels, and ores-prod-deploy to continue the integration work.
Change 388160 had a related patch set uploaded (by Awight; owner: Awight):
[mediawiki/services/ores/deploy@CELERY_4] Use branched ores to continue Celery 4 work
Change 388160 merged by Awight:
[mediawiki/services/ores/deploy@CELERY_4] Use branched ores to continue Celery 4 work
A little something to keep track of: I test-deployed the Celery 4 code to beta, and most of the wheels installed, but some did not. Installing the *.whl files manually, I saw the following message listing the missed packages:
Installing collected packages: scipy, six, websocket-client, socketIO-client, sseclient, statistics, statsd, stopit, tabulate, textstat, tqdm, urllib3, vine, Werkzeug, yamlconf Found existing installation: scipy 0.14.0 Not uninstalling scipy at /usr/lib/python3/dist-packages, outside environment /srv/deployment/ores/venv Successfully installed Werkzeug-0.12.2 scipy-0.17.1 six-1.11.0 socketIO-client-0.5.6 sseclient-0.0.18 statistics-1.0.3.5 statsd-3.2.1 stopit-1.1.1 tabulate-0.7.7 textstat-0.3.1 tqdm-4.15.0 urllib3-1.22 vine-1.1.4 websocket-client-0.44.0 yamlconf-0.2.3
Update: beta is still on Celery 3. I'm now getting timeout errors when running Celery 4 code locally.
Change 391264 had a related patch set uploaded (by Awight; owner: Awight):
[mediawiki/services/ores/deploy@CELERY_4] Bump revscoring and ores
Change 470870 had a related patch set uploaded (by Ladsgroup; owner: Ladsgroup):
[research/ores/wheels@master] Rebuild wheels for new flask and celery 4
Change 470870 merged by Ladsgroup:
[research/ores/wheels@master] Rebuild wheels for new flask and celery 4
Change 470878 had a related patch set uploaded (by Ladsgroup; owner: Ladsgroup):
[mediawiki/services/ores/deploy@master] Bump ores and wheels to HEAD
Change 470878 merged by Ladsgroup:
[mediawiki/services/ores/deploy@master] Bump ores and wheels to HEAD
With upgrading to celery4 we gained another 100% reduction in response time: