From ae3b856803666766e1087e95ac081e1555648fe1 Mon Sep 17 00:00:00 2001 From: Claudio-Daniel Freire <claudio-daniel.freire@inria.fr> Date: Mon, 19 Sep 2011 01:11:40 +0200 Subject: [PATCH] Fix in node rating --- src/nepi/testbeds/planetlab/node.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/nepi/testbeds/planetlab/node.py b/src/nepi/testbeds/planetlab/node.py index b9a7d09f..c6ef6aa5 100644 --- a/src/nepi/testbeds/planetlab/node.py +++ b/src/nepi/testbeds/planetlab/node.py @@ -336,11 +336,14 @@ class Node(object): tagname=tagnames, fields=('node_id','tagname','value')) - for node, tagname, value in taginfo: - tags[tagname][int(node)] = float(value) + unpack = operator.itemgetter('node_id','tagname','value') + for value in taginfo: + node, tagname, value = unpack(value) + if value and value.lower() != 'n/a': + tags[tagname][int(node)] = float(value) for tagname, weight, default in self.RATE_FACTORS: - taginfo = tags[tagname].get + taginfo = tags[tagname % replacements].get for node in nodes: rates[node] += weight * taginfo(node,default) @@ -372,6 +375,8 @@ class Node(object): value = tags[tag] if hasattr(self, attr): orig_attrs[attr] = getattr(self, attr) + if not value or value.lower() == 'n/a': + value = None setattr(self, attr, value) if 'peer_id' in info: -- 2.47.0