Univention Bugzilla – Bug 53748
Handle ldap.OTHER "parent does not exists" of S4-LDAP similar to NO_SUCH_OBJECT
Last modified: 2021-09-06 12:38:56 CEST
Every Jenkins run of UCS@school we see the following reject / Traceback in the S4-Connector: https://jenkins.knut.univention.de:8181/job/UCSschool-5.0/job/Install%20Singleserver/Config=s4,TestGroup=base1,UCSRelease=public/ws/test/connector-s4.log LDAP (PROCESS): sync from ucs: [ ou] [ add] ou=x9pfjovu83,DC=autotest201,DC=local LDAP (PROCESS): sync to ucs: [ ou] [ modify] 'ou=t8fy3hznaw,dc=autotest201,dc=local' LDAP (PROCESS): object_from_element: DN of removed object: 'ou=temporary_move_container_1630870373.7434678,DC=autotest201,DC=local' LDAP (PROCESS): sync to ucs: [ ou] [ delete] 'ou=temporary_move_container_1630870373.7434678,dc=autotest201,dc=local' LDAP (WARNING): Object to delete doesn't exists, ignore ('ou=temporary_move_container_1630870373.7434678,dc=autotest201,dc=local') LDAP (PROCESS): sync to ucs: [ ou] [ modify] 'ou=j2rch7dh8y,ou=t8fy3hznaw,dc=autotest201,dc=local' LDAP (PROCESS): object_from_element: DN of removed object: 'ou=temporary_move_container_1630870376.6795042,DC=autotest201,DC=local' LDAP (PROCESS): sync to ucs: [ ou] [ delete] 'ou=temporary_move_container_1630870376.6795042,dc=autotest201,dc=local' LDAP (WARNING): Object to delete doesn't exists, ignore ('ou=temporary_move_container_1630870376.6795042,dc=autotest201,dc=local') LDAP (PROCESS): sync to ucs: [ ou] [ modify] 'ou=x9pfjovu83,dc=autotest201,dc=local' LDAP (PROCESS): sync from ucs: [ user] [ add] cn=X8knlmqt5yh,ou=x9pfjovu83,DC=autotest201,DC=local LDAP (PROCESS): sync from ucs: [ group] [ modify] cn=domain users,cn=groups,DC=autotest201,DC=local LDAP (PROCESS): sync to ucs: [ user] [ modify] 'uid=x8knlmqt5yh,ou=x9pfjovu83,dc=autotest201,dc=local' LDAP (WARNING): sync failed, saved as rejected ยป /var/lib/univention-connector/s4/1630870395.591025 LDAP (WARNING): Traceback (most recent call last): File "/usr/lib/python3/dist-packages/univention/s4connector/__init__.py", line 822, in __sync_file_from_ucs if not self.sync_from_ucs(key, mapped_object, pre_mapped_ucs_dn, old_dn, old, new): File "/usr/lib/python3/dist-packages/univention/s4connector/s4/__init__.py", line 2027, in sync_from_ucs self.lo_s4.rename(old_dn, object['dn']) File "/usr/lib/python3/dist-packages/univention/uldap.py", line 846, in rename self.rename_ext_s(dn, newrdn, newsdn, serverctrls=serverctrls, response=response) File "/usr/lib/python3/dist-packages/univention/uldap.py", line 205, in _decorated return func(self, *args, **kwargs) File "/usr/lib/python3/dist-packages/univention/uldap.py", line 865, in rename_ext_s rtype, rdata, rmsgid, resp_ctrls = self.lo.rename_s(dn, newrdn, newsuperior, serverctrls=serverctrls) File "/usr/lib/python3/dist-packages/ldap/ldapobject.py", line 684, in rename_s resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all=1,timeout=self.timeout) File "/usr/lib/python3/dist-packages/ldap/ldapobject.py", line 749, in result3 resp_ctrl_classes=resp_ctrl_classes File "/usr/lib/python3/dist-packages/ldap/ldapobject.py", line 756, in result4 ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop) File "/usr/lib/python3/dist-packages/ldap/ldapobject.py", line 329, in _ldap_call reraise(exc_type, exc_value, exc_traceback) File "/usr/lib/python3/dist-packages/ldap/compat.py", line 44, in reraise raise exc_value File "/usr/lib/python3/dist-packages/ldap/ldapobject.py", line 313, in _ldap_call result = func(*args,**kwargs) ldap.OTHER: {'desc': 'Other (e.g., implementation specific) error', 'info': '00002095: objectclass: Cannot rename cn=x8knlmqt5yh,ou=x9pfjovu83,DC=autotest201,DC=local, parent does not exist!'} LDAP (PROCESS): sync from ucs: [ group] [ modify] cn=domain users,cn=groups,DC=autotest201,DC=local LDAP (PROCESS): sync from ucs: [ ou] [ delete] ou=x9pfjovu83,DC=autotest201,DC=local LDAP (WARNING): delete subobject: 'uid=x8knlmqt5yh,ou=x9pfjovu83,dc=autotest201,dc=local' LDAP (PROCESS): sync from ucs: [ user] [ delete] CN=X8knlmqt5yh,OU=x9pfjovu83,DC=autotest201,DC=local We should handle ldap.OTHER "parent does not exists" of S4-LDAP similar to ldpa.NO_SUCH_OBJECT.