From 8bb3236eda2e4986d2e5d714f1e93069cc940e76 Mon Sep 17 00:00:00 2001
From: Yuri Astrakhan <yuriastrakhan@gmail.com>
Date: Wed, 20 Nov 2019 12:47:12 -0500
Subject: [PATCH] python3 qa preparations (#711)

---
 qa/table_sizes.py | 55 +++++++++++++++++++++++------------------------
 1 file changed, 27 insertions(+), 28 deletions(-)

diff --git a/qa/table_sizes.py b/qa/table_sizes.py
index f3ed9a1b..e005b0e1 100755
--- a/qa/table_sizes.py
+++ b/qa/table_sizes.py
@@ -3,10 +3,9 @@ import sys
 import argparse
 import subprocess
 
-parser  = argparse.ArgumentParser()
+parser = argparse.ArgumentParser()
 parser.add_argument('--noan', action='store_true', help='Not to run make psql-analyze')
 
-
 TOTAL_SIZE_SQL = """SELECT
   pg_size_pretty(sum(size)) AS size
 FROM (
@@ -18,8 +17,7 @@ FROM (
 ) a
 ;""".replace('\"', '\\\"')
 
-
-TABLE_SIZES_SQL="""SELECT
+TABLE_SIZES_SQL = """SELECT
   a.relname as "table",
   pg_table_size(a.relid) as "size",
   b.n_live_tup as "rows"
@@ -30,7 +28,6 @@ WHERE
 ORDER BY a.relname;
 """.replace('\"', '\\\"')
 
-
 TABLES_SQL = """SELECT
   a.relname
 FROM pg_catalog.pg_statio_user_tables a
@@ -59,34 +56,38 @@ COLUMNS_SQL = """select
 from {1} t;
 """.replace('\"', '\\\"')
 
+
 def print_column_sizes(tables):
     for table in tables:
-        print "Column sizes of table "+table
+        print("Column sizes of table " + table)
         cmds = [
             'docker-compose run --rm import-osm',
             '/usr/src/app/psql.sh -t -A -F\",\" -P pager=off',
-            '-c \"' + COLUMN_NAMES_SQL.format(table).replace('\n', ' ').replace('\r', '') + '\"'
+            '-c \"' + COLUMN_NAMES_SQL.format(table).replace('\n', ' ').replace('\r',
+                                                                                '') + '\"'
         ]
         # print " ".join(cmds)
         output = subprocess.check_output(" ".join(cmds), shell=True)
-        columns = filter(lambda c: len(c)>0, map(lambda l: l.strip(), output.split('\n')))
+        columns = filter(lambda c: len(c) > 0,
+                         map(lambda l: l.strip(), output.split('\n')))
 
         # print columns
 
-        col_sql = ",\n".join(map(lambda c: "sum(pg_column_size(\\\""+c+"\\\")) as \\\""+c+"\\\"", columns))
+        col_sql = ",\n".join(
+            map(lambda c: "sum(pg_column_size(\\\"" + c + "\\\")) as \\\"" + c + "\\\"",
+                columns))
 
         # print COLUMNS_SQL.format(col_sql, table);
 
         cmds = [
             'docker-compose run --rm import-osm',
             '/usr/src/app/psql.sh -F\",\" --no-align -P pager=off',
-            '-c \"' + COLUMNS_SQL.format(col_sql, table).replace('\n', ' ').replace('\r', '') + '\"'
+            '-c \"' + COLUMNS_SQL.format(col_sql, table).replace('\n', ' ').replace(
+                '\r', '') + '\"'
         ]
         # print " ".join(cmds)
         col_csv = subprocess.check_output(" ".join(cmds), shell=True)
-        print col_csv
-
-
+        print(col_csv)
 
 
 if __name__ == "__main__":
@@ -94,12 +95,11 @@ if __name__ == "__main__":
 
     try:
 
-        if(not args.noan):
-            print "Running make psql-analyze"
+        if not args.noan:
+            print("Running make psql-analyze")
             subprocess.check_output("make psql-analyze", shell=True)
 
-
-        print "Total size of tables"
+        print("Total size of tables")
         cmds = [
             'docker-compose run --rm import-osm',
             '/usr/src/app/psql.sh -F\",\" --no-align -P pager=off',
@@ -107,11 +107,10 @@ if __name__ == "__main__":
         ]
         # print " ".join(cmds)
         TOTAL_SIZE_CSV = subprocess.check_output(" ".join(cmds), shell=True)
-        print TOTAL_SIZE_CSV
-        print "\n"
+        print(TOTAL_SIZE_CSV)
+        print("\n")
 
-
-        print "Table sizes"
+        print("Table sizes")
         cmds = [
             'docker-compose run --rm import-osm',
             '/usr/src/app/psql.sh -F\",\" --no-align -P pager=off',
@@ -119,11 +118,10 @@ if __name__ == "__main__":
         ]
         # print " ".join(cmds)
         TABLE_SIZES_CSV = subprocess.check_output(" ".join(cmds), shell=True)
-        print TABLE_SIZES_CSV
-        print "\n"
+        print(TABLE_SIZES_CSV)
+        print("\n")
 
-
-        print "Column sizes"
+        print("Column sizes")
         cmds = [
             'docker-compose run --rm import-osm',
             '/usr/src/app/psql.sh -t -A -F\",\" -P pager=off',
@@ -131,11 +129,12 @@ if __name__ == "__main__":
         ]
         # print " ".join(cmds)
         output = subprocess.check_output(" ".join(cmds), shell=True)
-        tables = filter(lambda t: len(t)>0, map(lambda l: l.strip(), output.split('\n')))
+        tables = filter(lambda t: len(t) > 0,
+                        map(lambda l: l.strip(), output.split('\n')))
 
         print_column_sizes(tables);
 
         # print tables
-    except subprocess.CalledProcessError, e:
-        print "Error:\n", e.output
+    except subprocess.CalledProcessError as e:
+        print("Error:\n", e.output)
     sys.exit(0)