From 90975eb0887562bd704b95a4ff34882670de09c7 Mon Sep 17 00:00:00 2001 From: Joe Guo Date: Wed, 3 Oct 2018 23:45:12 +1300 Subject: [PATCH] uptodateness: extract get_utdv_max_distance To avoid returning 2 values from get_utdv_distances. Signed-off-by: Joe Guo Reviewed-by: Douglas Bagnall Reviewed-by: Andrew Bartlett BUG: https://bugzilla.samba.org/show_bug.cgi?id=13658 --- python/samba/netcmd/visualize.py | 5 ++++- python/samba/uptodateness.py | 13 +++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/python/samba/netcmd/visualize.py b/python/samba/netcmd/visualize.py index 98d33dbba56d..05fdc013aa18 100644 --- a/python/samba/netcmd/visualize.py +++ b/python/samba/netcmd/visualize.py @@ -46,6 +46,7 @@ from samba.uptodateness import ( get_utdv, get_utdv_edges, get_utdv_distances, + get_utdv_max_distance, ) COMMON_OPTIONS = [ @@ -692,7 +693,9 @@ class cmd_uptodateness(GraphCommand): utdv_edges = get_utdv_edges(local_kcc, dsas, part_dn, lp, creds) - distances, max_distance = get_utdv_distances(utdv_edges, dsas) + distances = get_utdv_distances(utdv_edges, dsas) + + max_distance = get_utdv_max_distance(distances) digits = min(max_digits, len(str(max_distance))) if digits < 1: diff --git a/python/samba/uptodateness.py b/python/samba/uptodateness.py index b3468639e92d..e5e0fc30a9b8 100644 --- a/python/samba/uptodateness.py +++ b/python/samba/uptodateness.py @@ -117,7 +117,6 @@ def get_utdv_edges(local_kcc, dsas, part_dn, lp, creds): def get_utdv_distances(utdv_edges, dsas): distances = {} - max_distance = 0 for dn1 in dsas: try: peak = utdv_edges[dn1][dn1] @@ -130,12 +129,18 @@ def get_utdv_distances(utdv_edges, dsas): if dn1 in utdv_edges[dn2]: dist = peak - utdv_edges[dn2][dn1] d[dn2] = dist - if dist > max_distance: - max_distance = dist else: print("Missing dn %s from UTD vector" % dn1, file=sys.stderr) else: print("missing dn %s from UTD vector list" % dn2, file=sys.stderr) - return distances, max_distance + return distances + + +def get_utdv_max_distance(distances): + max_distance = 0 + for vector in distances.values(): + for distance in vector.values(): + max_distance = max(max_distance, distance) + return max_distance -- 2.34.1