- all_port_stats = self.vnf_execute('multi_port_stats', range(port_count))
- rx_total = tx_total = tsc = 0
- try:
- for single_port_stats in all_port_stats:
- rx_total = rx_total + single_port_stats[1]
- tx_total = tx_total + single_port_stats[2]
- tsc = tsc + single_port_stats[5]
- except (TypeError, IndexError):
- LOG.error("Invalid data ...")
+ tmpPorts = [self.vnfd_helper.port_num(port_name)
+ for port_name in self.vnfd_helper.port_pairs.all_ports]
+ ok = False
+ timeout = time.time() + constants.RETRY_TIMEOUT
+ while not ok:
+ ok, all_port_stats = self.vnf_execute('multi_port_stats', tmpPorts)
+ if time.time() > timeout:
+ break
+
+ if ok:
+ rx_total = tx_total = tsc = 0
+ try:
+ for single_port_stats in all_port_stats:
+ rx_total = rx_total + single_port_stats[1]
+ tx_total = tx_total + single_port_stats[2]
+ tsc = tsc + single_port_stats[5]
+ except (TypeError, IndexError):
+ LOG.error("Invalid data ...")
+ return {}
+ else: