From 3dfb5268ebfada08c1a2316708564e627f86da42 Mon Sep 17 00:00:00 2001 From: ahothan Date: Wed, 7 Nov 2018 10:16:08 -0800 Subject: NFVBENCH-107 NFVbench 2.0 ValueError at end of fixed rate run Change-Id: I16181a530d040f0ff9348a7b4c1764fec5f73d69 Signed-off-by: ahothan --- nfvbench/chaining.py | 2 +- nfvbench/traffic_gen/trex.py | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/nfvbench/chaining.py b/nfvbench/chaining.py index fa9b799..5e2d730 100644 --- a/nfvbench/chaining.py +++ b/nfvbench/chaining.py @@ -1073,7 +1073,7 @@ class ChainManager(object): return self.chains[0].get_host_ips() # in the case of EXT, the compute node must be retrieved from the port # associated to any of the dest MACs - dst_macs = self.chain_runner.traffic_client.gen.get_dest_macs() + dst_macs = self.generator_config.get_dest_macs() # dest MAC on port 0, chain 0 dst_mac = dst_macs[0][0] host_ip = self.get_host_ip_from_mac(dst_mac) diff --git a/nfvbench/traffic_gen/trex.py b/nfvbench/traffic_gen/trex.py index 4d7e175..6aec57d 100644 --- a/nfvbench/traffic_gen/trex.py +++ b/nfvbench/traffic_gen/trex.py @@ -197,6 +197,12 @@ class TRex(AbstractTrafficGenerator): If there are latency streams, those same counters need to be added in the same way """ + def get_latency(lval): + try: + return int(round(lval)) + except ValueError: + return 0 + for ifs in if_stats: ifs.tx = ifs.rx = 0 for port in range(2): @@ -211,9 +217,9 @@ class TRex(AbstractTrafficGenerator): try: lat = trex_stats['latency'][lat_pg_id]['latency'] # dropped_pkts += lat['err_cntrs']['dropped'] - latencies[port].max_usec = int(round(lat['total_max'])) - latencies[port].min_usec = int(round(lat['total_min'])) - latencies[port].avg_usec = int(round(lat['average'])) + latencies[port].max_usec = get_latency(lat['total_max']) + latencies[port].min_usec = get_latency(lat['total_min']) + latencies[port].avg_usec = get_latency(lat['average']) except KeyError: pass -- cgit 1.2.3-korg