From 66277ef739480059fb49efec8c9938fe21ae3ee1 Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Mon, 12 Mar 2012 16:29:50 +0100 Subject: [PATCH] Get lock sooner, connect to ldap later --- ud-generate | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ud-generate b/ud-generate index 064a9bd..a417532 100755 --- a/ud-generate +++ b/ud-generate @@ -1281,14 +1281,20 @@ def ud_generate(): parser.print_help() sys.exit(1) - - l = make_ldap_conn() - if options.generatedir is not None: generate_dir = os.environ['UD_GENERATEDIR'] elif 'UD_GENERATEDIR' in os.environ: generate_dir = os.environ['UD_GENERATEDIR'] + + lockf = os.path.join(generate_dir, 'ud-generate.lock') + lock = get_lock( lockf ) + if lock is None: + sys.stderr.write("Could not acquire lock %s.\n"%(lockf)) + sys.exit(1) + + l = make_ldap_conn() + ldap_last_mod = getLastLDAPChangeTime(l) cache_last_mod = getLastBuildTime(generate_dir) need_update = ldap_last_mod > cache_last_mod @@ -1299,12 +1305,6 @@ def ud_generate(): fd.close() sys.exit(0) - lockf = os.path.join(generate_dir, 'ud-generate.lock') - lock = get_lock( lockf ) - if lock is None: - sys.stderr.write("Could not acquire lock %s.\n"%(lockf)) - sys.exit(1) - tracefd = open(os.path.join(generate_dir, "last_update.trace"), "w") generate_all(generate_dir, l) tracefd.write("%s\n%s\n" % (ldap_last_mod, int(time.time()))) -- 2.20.1