Page MenuHomePhabricator

Restart of a Python3.7 webservice on Toolforge results in a KeyError
Closed, ResolvedPublicBUG REPORT

Description

$ ssh toolforge
$ become scholia
$ webservice --backend=kubernetes -m 1G python3.7 restart
DEPRECATED: 'python3.7' type is deprecated.
  See https://wikitech.wikimedia.org/wiki/Help:Toolforge/Kubernetes
  for currently supported types.
Restarting...
Traceback (most recent call last):
  File "/usr/local/bin/webservice", line 517, in <module>
    job.request_restart()
  File "/usr/lib/python3/dist-packages/toolsws/backends/kubernetes.py", line 582, in request_restart
    self._get_live_deployment()["spec"], self._get_deployment()["spec"]
  File "/usr/lib/python3/dist-packages/toolsws/backends/kubernetes.py", line 237, in _containers_are_same
    if parse_quantity(traverse(first, key)) != parse_quantity(
  File "/usr/lib/python3/dist-packages/toolsws/backends/kubernetes.py", line 210, in traverse
    obj = obj[key]
KeyError: 'cpu'

I was expecting that the webservice should be restarted.

Event Timeline

@Fnielsen the quick work around is probably to webservice stop and then webservice --backend=kubernetes -m 1G python3.7 start. You might also benefit from making a webservice.template file so you don't have to remember all those CLI arguments in the future.

Change 885859 had a related patch set uploaded (by Majavah; author: Majavah):

[operations/software/tools-webservice@master] kubernetes: Fix restart for some tools with default resources

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

Change 885859 merged by jenkins-bot:

[operations/software/tools-webservice@master] kubernetes: Fix restart for some tools with default resources

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

Change 885866 had a related patch set uploaded (by Majavah; author: Majavah):

[operations/software/tools-webservice@master] kubernetes: fix null handling

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

Change 885866 merged by jenkins-bot:

[operations/software/tools-webservice@master] kubernetes: fix null handling

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

taavi claimed this task.

Fixed.