Bug #8416
closed[Node Manager] General compute node driver calls self.find_node - Unimplemented in the EC2 driver
Description
Looks like a method was not defined for ec2 in the latest node manager cleanup.
2016-02-11_21:58:44.69933 2016-02-11 21:58:44 ComputeNodeSetupActor.9ada5a3a8124[10856] WARNING: Re-raising unknown error (no retry): ec2.ComputeNodeDriver.find_node
2016-02-11_21:58:44.69935 Traceback (most recent call last):
2016-02-11_21:58:44.69935 File "/usr/local/lib/python2.7/dist-packages/arvnodeman/computenode/__init__.py", line 74, in retry_wrapper
2016-02-11_21:58:44.69935 ret = orig_func(self, *args, **kwargs)
2016-02-11_21:58:44.69936 File "/usr/local/lib/python2.7/dist-packages/arvnodeman/computenode/dispatch/__init__.py", line 120, in create_cloud_node
2016-02-11_21:58:44.69936 self.arvados_node)
2016-02-11_21:58:44.69936 File "/usr/local/lib/python2.7/dist-packages/arvnodeman/computenode/driver/__init__.py", line 155, in create_node
2016-02-11_21:58:44.69937 node = self.find_node(kwargs['name'])
2016-02-11_21:58:44.69937 File "/usr/local/lib/python2.7/dist-packages/arvnodeman/computenode/driver/ec2.py", line 79, in find_node
2016-02-11_21:58:44.69937 raise NotImplementedError("ec2.ComputeNodeDriver.find_node")
2016-02-11_21:58:44.69938 NotImplementedError: ec2.ComputeNodeDriver.find_node
$ dpkg -l |grep node ii arvados-node-manager 0.1.20160208210928-1 all The Arvados node manager
Updated by Ward Vandewege about 10 years ago
- Description updated (diff)
- Assigned To set to Peter Amstutz
Updated by Brett Smith about 10 years ago
- Subject changed from [Node Manager] missing method on ec2 to [Node Manager] General compute node driver calls self.find_node - Unimplemented in the EC2 driver
- Assigned To deleted (
Peter Amstutz) - Target version set to 2016-03-02 sprint
Either the method needs to be implemented on EC2, or the code in the generic driver needs to be implemented without using this.
Updated by Brett Smith about 10 years ago
- Assigned To set to Peter Amstutz
Peter already has a branch that removes the find_node call from the generic driver (if I followed correctly).
Updated by Peter Amstutz about 10 years ago
- Status changed from New to In Progress
Updated by Nico César about 10 years ago
reviewing 8b5a707a7a84e7fe9391d9c066f6e08f326e22f7
in services/nodemanager/arvnodeman/computenode/driver/__init__.py
I see that is a generic "except:" for find_node ( that is not there anymore ) I think we should get rid of that and make the exception explode. Dragons could be hidden under the carpet otherwise. If that except is needed to avoid "re-raising the original create_node exception" then it should be an specific class of exception to be handle.
try:
node = self.search_for(kwargs['name'], 'list_nodes', self._name_key)
if node:
return node
except:
# Ignore possible exception from find_node in favor of
# re-raising the original create_node exception.
pass
raise
all the rest LGTM
Updated by Peter Amstutz about 10 years ago
- Status changed from In Progress to Resolved
Applied in changeset arvados|commit:c398b7d60aedab0a7b6f99cfee9e631bd66c93cd.