From: Tony Mack Date: Sun, 27 Sep 2009 00:00:42 +0000 (+0000) Subject: use registry.remove_peer_record() to remove the record X-Git-Tag: sfa-0.9-3~30 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=a873096fb18d61f2049b56016dc10cb907bc8763;p=sfa.git use registry.remove_peer_record() to remove the record --- diff --git a/sfa/server/sfa-clean-peer-records.py b/sfa/server/sfa-clean-peer-records.py index 8701f04b..635b1149 100644 --- a/sfa/server/sfa-clean-peer-records.py +++ b/sfa/server/sfa-clean-peer-records.py @@ -38,14 +38,15 @@ def main(): # get local peer records table = GeniTable() peer_records = table.find({'~peer_authority': None}) - - # get a list of authorities contained in the peer record list for peer_record in peer_records: peer_auth = peer_record['peer_authority'] if peer_auth in registries: - records = registries[peer_auth].resolve(credential, peer_record['hrn']) - if not records: - table.remove(peer_record) + try: + records = registries[peer_auth].resolve(credential, peer_record['hrn']) + except: + # an exception will be thrown if the record doenst exist + # if so remove the record from the local registry + registries[sfa_api.hrn].remove_peer_object(credential, peer_record) if __name__ == '__main__': main()