Bug #8416

[Node Manager] General compute node driver calls self.find_node - Unimplemented in the EC2 driver

Added by Ward Vandewege almost 6 years ago. Updated almost 6 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Start date:
02/24/2016
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Story points:
0.5

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

Subtasks

Task #8523: Fix node managerResolvedPeter Amstutz

Task #8467: Review 8416-node-manager-find-nodeResolvedPeter Amstutz

Associated revisions

Revision c398b7d6
Added by Peter Amstutz almost 6 years ago

Merge branch '8416-node-manager-find-node' closes #8416

History

#1 Updated by Ward Vandewege almost 6 years ago

  • Description updated (diff)
  • Assigned To set to Peter Amstutz

#2 Updated by Brett Smith almost 6 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.

#3 Updated by Brett Smith almost 6 years ago

  • Story points set to 0.5

#4 Updated by Brett Smith almost 6 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).

#5 Updated by Peter Amstutz almost 6 years ago

  • Status changed from New to In Progress

#6 Updated by Nico C├ęsar almost 6 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

#7 Updated by Peter Amstutz almost 6 years ago

  • Status changed from In Progress to Resolved

Applied in changeset arvados|commit:c398b7d60aedab0a7b6f99cfee9e631bd66c93cd.

Also available in: Atom PDF