---
+++
@@ -104,17 +104,16 @@
filename = self._get_filename(graph, i)
title = '%s %s' % (self.GRAPHS[graph]['title'], 'Total Top %i' % TOP_N_VALUES)
imgs.append([{'title': title, 'filename':filename}])
- if not self.exists(filename):
- # Totals graphs
- total_values = copy.copy(sorted_values[:TOP_N_VALUES])
- for j, val in enumerate(total_values):
- if val[1] < sorted_values[0][1] * 0.01: # 0.01 to limit the size of smallest part of the pie
- total_values = sorted_values[:j]
- break
+ # Totals graphs
+ total_values = copy.copy(sorted_values[:TOP_N_VALUES])
+ for j, val in enumerate(total_values):
+ if val[1] < sorted_values[0][1] * 0.01: # 0.01 to limit the size of smallest part of the pie
+ total_values = sorted_values[:j]
+ break
- values = [val[1] for val in total_values]
- labels = ['%s %s' % (val[0], humanize(val[1], self.GRAPHS[graph]['counter_type'])) for val in total_values]
- self._render_pie(values, labels, title, filename)
+ values = [val[1] for val in total_values]
+ labels = ['%s %s' % (val[0], humanize(val[1], self.GRAPHS[graph]['counter_type'])) for val in total_values]
+ self._render_pie(values, labels, title, filename)
def grouped(iterable, n):
"s -> (s0,s1,s2,...sn-1), (sn,sn+1,sn+2,...s2n-1), (s2n,s2n+1,s2n+2,...s3n-1), ..."
@@ -126,8 +125,7 @@
filename = self._get_filename(graph + str(i), j)
title = '%s %s' % (self.GRAPHS[graph]['title'], 'All %i/%i' % (j + 1, len(groups)))
imgs[-1].append({'title': title, 'filename':filename})
- if self.exists(filename):
- continue
+
_values = [val[1] for val in values]
labels = ['%s %s' % (val[0], humanize(val[1], self.GRAPHS[graph]['counter_type'])) for val in values]
self._render_pie(_values, labels, title, filename)
---
+++
@@ -6,8 +6,6 @@
class DotFile(OutputFile):
def render(self, gv_file):
- if self.exists():
- return
cmd = ['dot', '-Tcmapx', '-o' + self.filename + '.map', '-Tpng', '-o' + self.filename, gv_file]
try:
---
+++
@@ -45,74 +45,73 @@
imgs = db_size.render()
# Tables
- if not gv_map.exists():
- gv_map.add_header()
+ gv_map.add_header()
- print('Building graphs')
- for table in db.get_tables():
- columns = db.get_columns(table)
- sizes = db.get_table_size(table)
- keys = db.get_table_keys(table)
- indexes = db.get_table_index(table)
- errors = db.get_table_errors(table)
- gv_map.add_table(table, errors, sizes, keys, indexes, columns)
- gv_tables[table].add_table(table, errors, sizes, keys, indexes, columns, True)
- tables[table] = (table, errors, sizes, keys, indexes, columns)
+ print('Building graphs')
+ for table in db.get_tables():
+ columns = db.get_columns(table)
+ sizes = db.get_table_size(table)
+ keys = db.get_table_keys(table)
+ indexes = db.get_table_index(table)
+ errors = db.get_table_errors(table)
+ gv_map.add_table(table, errors, sizes, keys, indexes, columns)
+ gv_tables[table].add_table(table, errors, sizes, keys, indexes, columns, True)
+ tables[table] = (table, errors, sizes, keys, indexes, columns)
- print('Adding constraints')
- # Constraints
- for table in db.get_tables():
- for src, dst in db.get_foreign_keys(table):
- gv_tables[table].add_table(*tables[dst[0]])
- gv_tables[table].add_constraint(src, dst)
- gv_tables[dst[0]].add_table(*tables[table])
- gv_tables[dst[0]].add_constraint(src, dst)
- gv_map.add_constraint(src, dst)
+ print('Adding constraints')
+ # Constraints
+ for table in db.get_tables():
+ for src, dst in db.get_foreign_keys(table):
+ gv_tables[table].add_table(*tables[dst[0]])
+ gv_tables[table].add_constraint(src, dst)
+ gv_tables[dst[0]].add_table(*tables[table])
+ gv_tables[dst[0]].add_constraint(src, dst)
+ gv_map.add_constraint(src, dst)
- print('Adding missing constraints')
- # Missing constraints
- for table in db.get_tables():
- for constraint in db.get_missing_constraints(table):
- gv_tables[table].add_table(*tables[constraint[2]])
- gv_tables[table].add_missing_constraint(*constraint)
- gv_tables[constraint[2]].add_table(*tables[table])
- gv_tables[constraint[2]].add_missing_constraint(*constraint)
- gv_map.add_missing_constraint(*constraint)
+ print('Adding missing constraints')
+ # Missing constraints
+ for table in db.get_tables():
+ for constraint in db.get_missing_constraints(table):
+ gv_tables[table].add_table(*tables[constraint[2]])
+ gv_tables[table].add_missing_constraint(*constraint)
+ gv_tables[constraint[2]].add_table(*tables[table])
+ gv_tables[constraint[2]].add_missing_constraint(*constraint)
+ gv_map.add_missing_constraint(*constraint)
- print('Adding inheritance')
- # Inheritance link
- for src, dst in db.get_inherited_tables():
- gv_map.add_inherited(src, dst)
- gv_tables[src].add_table(*tables[dst])
- gv_tables[src].add_inherited(src, dst)
- gv_tables[dst].add_table(*tables[src])
- gv_tables[dst].add_inherited(src, dst)
+ print('Adding inheritance')
+ # Inheritance link
+ for src, dst in db.get_inherited_tables():
+ gv_map.add_inherited(src, dst)
+ gv_tables[src].add_table(*tables[dst])
+ gv_tables[src].add_inherited(src, dst)
+ gv_tables[dst].add_table(*tables[src])
+ gv_tables[dst].add_inherited(src, dst)
- print('Adding duplicates')
- for _tables, duplicate_type in db.get_duplicated_tables().items():
- src, dst = _tables.split('/')
- gv_map.add_duplicate(src, dst, duplicate_type)
- gv_tables[src].add_table(*tables[dst])
- gv_tables[src].add_duplicate(src, dst, duplicate_type)
- gv_tables[dst].add_table(*tables[src])
- gv_tables[dst].add_duplicate(src, dst, duplicate_type)
+ print('Adding duplicates')
+ for _tables, duplicate_type in db.get_duplicated_tables().items():
+ src, dst = _tables.split('/')
+ gv_map.add_duplicate(src, dst, duplicate_type)
+ gv_tables[src].add_table(*tables[dst])
+ gv_tables[src].add_duplicate(src, dst, duplicate_type)
+ gv_tables[dst].add_table(*tables[src])
+ gv_tables[dst].add_duplicate(src, dst, duplicate_type)
- namespaces = db.get_namespaces().items()
- if len(namespaces) != 1:
- # Show namespaces only when there are more than one
- for namespace, tables in namespaces:
- gv_map.add_namespace(namespace, tables)
+ namespaces = db.get_namespaces().items()
+ if len(namespaces) != 1:
+ # Show namespaces only when there are more than one
+ for namespace, tables in namespaces:
+ gv_map.add_namespace(namespace, tables)
- print('Building graphs images')
- for gv in [gv_map] + list(gv_tables.values()):
- gv.add_footer()
- gv.close()
+ print('Building graphs images')
+ for gv in [gv_map] + list(gv_tables.values()):
+ gv.add_footer()
+ gv.close()
- dot = DotFile(gv.basename.replace('.gv', '.png'))
- dot.render(gv.filename)
+ dot = DotFile(gv.basename.replace('.gv', '.png'))
+ dot.render(gv.filename)
- table_html = TableFile(gv.basename.replace('.gv', '.html'))
- table_html.render()
+ table_html = TableFile(gv.basename.replace('.gv', '.html'))
+ table_html.render()
# Generate HTML files
html_file = IndexFile('index.html')
---
+++
@@ -24,10 +24,3 @@
if '\n' not in buf:
buf += '\n'
self.fd.write(buf)
-
- def exists(self, filename=None):
- filename = filename or self.filename
- exists = os.path.exists(filename)
- if exists:
- print("Warning: file %s already exists. Remove it first to rebuild it." % filename)
- return exists
Generated with KisssPM