papi: refactor set_errors_str 11/20411/2
authorPaul Vinciguerra <pvinci@vinciconsulting.com>
Sat, 29 Jun 2019 12:33:05 +0000 (08:33 -0400)
committerAndrew Yourtchenko <ayourtch@gmail.com>
Mon, 1 Jul 2019 08:18:35 +0000 (08:18 +0000)
Assuming 2500 50 char lines:
  string_concat elapsed: 5.919933e-04
  string_join   elapsed: 2.830029e-04
  string_concat size:     156,312,500
  string_join size:           125,000

Type: refactor

Change-Id: I0a400265426bde492e9a651d24996ddcfe954aa1
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
src/vpp-api/python/vpp_papi/vpp_stats.py

index 3638892..eeaa32d 100644 (file)
@@ -292,8 +292,8 @@ class VPPStats(object):
 
     def set_errors_str(self):
         '''Return all errors counters > 0 pretty printed'''
-        s = 'ERRORS:\n'
+        s = ['ERRORS:']
         error_counters = self.set_errors()
         for k in sorted(error_counters):
-            s += '{:<60}{:>10}\n'.format(k, error_counters[k])
-        return s
+            s.append('{:<60}{:>10}'.format(k, error_counters[k]))
+        return '%s\n' % '\n'.join(s)