From bb1d7a741c3e8c932e13e642adb1799957becb0c Mon Sep 17 00:00:00 2001 From: Martin Basti Date: Mar 19 2015 11:37:09 +0000 Subject: Server Upgrade: do not sort updates by DN Ticket: https://fedorahosted.org/freeipa/ticket/4904 Reviewed-By: David Kupka --- diff --git a/ipaserver/install/ldapupdate.py b/ipaserver/install/ldapupdate.py index 53d5407..e8516ff 100644 --- a/ipaserver/install/ldapupdate.py +++ b/ipaserver/install/ldapupdate.py @@ -784,22 +784,11 @@ class LDAPUpdate: raise RuntimeError("Offline updates are not supported.") def _run_updates(self, all_updates): - # For adds and updates we want to apply updates from shortest - # to greatest length of the DN. - # For deletes we want the reverse - def update_sort_key(dn_update): - dn, update = dn_update - assert isinstance(dn, DN) - return len(dn) - sorted_updates = sorted(all_updates.iteritems(), key=update_sort_key) - - for dn, update in sorted_updates: + for dn, update in all_updates.iteritems(): self._update_record(update) - # Now run the deletes in reversed order - sorted_updates.reverse() - for dn, update in sorted_updates: + for dn, update in all_updates.iteritems(): self._delete_record(update) def update(self, files, ordered=False):