Univention Bugzilla – Bug 26069
modrdn nicht zuverlässig
Last modified: 2014-04-04 19:19:13 CEST
Ich habe einen Listener mit modrdn "Unterstützung" ... modrdn='1' def handler(dn, new, old, command): univention.debug.debug(univention.debug.LISTENER, univention.debug.ERROR,"init: dn %s" % dn) univention.debug.debug(univention.debug.LISTENER, univention.debug.ERROR,"init: command %s" % command) ... Wenn ich nun vorhandene Shares per UDM Python API in einer Schleife umbenenne, sollte der Listener für alle einzeln mit command=r und command=a aufgerufen werden. In meinem Fall wurde aber command=a ein paar mal "vergessen": init: dn cn=s02-4r,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-5r,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command a init: dn cn=s02-4B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-5B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command a init: dn cn=s02-3C,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-4C,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command a init: dn cn=s02-3B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-2A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-3A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command a init: dn cn=s02-2B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r init: dn cn=s02-1A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test init: command r /var/lib/univention-ldap/notify/transaction: 841948 cn=s02-4r,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841949 cn=s02-5r,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841950 cn=s02-5r,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841951 cn=s02-4r,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841952 cn=s02-5r,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841953 cn=s02-5r,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841954 cn=s02-4B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841955 cn=s02-5B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841956 cn=s02-5B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841957 cn=s02-4B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841958 cn=s02-5B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841959 cn=s02-5B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841960 cn=s02-3C,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841961 cn=s02-4C,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841962 cn=s02-4C,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841963 cn=s02-3C,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841964 cn=s02-4C,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841965 cn=s02-4C,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841966 cn=s02-3B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841967 cn=s02-4B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841968 cn=s02-4B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841969 cn=s02-3B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841970 cn=s02-4B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841971 cn=s02-4B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841972 cn=s02-2A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841973 cn=s02-3A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841974 cn=s02-3A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841975 cn=s02-2A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841976 cn=s02-3A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841977 cn=s02-3A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841978 cn=s02-2B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841979 cn=s02-3B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841980 cn=s02-3B,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841981 cn=s02-2B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841982 cn=s02-3B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841983 cn=s02-3B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m 841984 cn=s02-1A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test r 841985 cn=s02-2A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test a 841986 cn=s02-2A,cn=klassen,cn=schueler,cn=groups,ou=s02,dc=school,dc=test m 841987 cn=s02-1A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test r 841988 cn=s02-2A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test a 841989 cn=s02-2A,cn=klassen,cn=shares,ou=s02,dc=school,dc=test m Die Shares wurde wie folgt umbenannt: # old new s02-4r s02-5r s02-4B s02-5B s02-3C s02-4C s02-3B s02-4B -> failed s02-2A s02-3A s02-2B s02-3B -> failed s02-1A s02-2A -> failed Auffällig hier ist, dass alle die fehlgeschlagen sind, die es vorher bereist gab (zu diesem Zeitpunkt aber bereits umbenannt sein sollten). Sind hier vielleicht noch falsche Daten in einer Art Cache gespeichert?
Created attachment 4162 [details] listener.log debug=4
Wenn das Objekt zu einem Objekt wird, welches es bereits gab, wird der Handler nicht aufgerufen. Der Handler wird nicht aufgerufen, da das neue Objekt identisch ist, mit dem alten Objekt. Beispielsweise wird aus cn=s02-3B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test das Objekt cn=s02-4B,cn=klassen,cn=shares,ou=s02,dc=school,dc=test Das Objekt cn=s02-4B gab es vorher schon mit genau den gleichen Werten.
Das Objekt wird beim modrdn jetzt aus dem Cache entfernt.
Verified: * Funktion bei modrdn ist jetzt ok, siehe unten * Changelog ok ---------------------------------------------------------------------------- 13.02.12 11:31:24.497 LISTENER ( WARN ) : initializing module modhandler 13.02.12 11:31:24.771 LISTENER ( WARN ) : finished initializing module modhandler 13.02.12 13:39:02.875 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1A,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:39:02.876 LISTENER ( ERROR ) : modhandler -- command: 'a' Exporting directories for NFS kernel daemon.... Starting NFS kernel daemon: nfsd mountd. Re-exporting directories for NFS kernel daemon.... Reloading /etc/samba/smb.conf (smbd only):. 13.02.12 13:39:48.767 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1B,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:39:48.768 LISTENER ( ERROR ) : modhandler -- command: 'a' Exporting directories for NFS kernel daemon.... Starting NFS kernel daemon: nfsd mountd. Re-exporting directories for NFS kernel daemon.... Reloading /etc/samba/smb.conf (smbd only):. 13.02.12 13:40:33.683 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1B,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:40:33.684 LISTENER ( ERROR ) : modhandler -- command: 'r' 13.02.12 13:40:33.798 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1C,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:40:33.798 LISTENER ( ERROR ) : modhandler -- command: 'a' Exporting directories for NFS kernel daemon.... Starting NFS kernel daemon: nfsd mountd. Re-exporting directories for NFS kernel daemon.... Reloading /etc/samba/smb.conf (smbd only):. 13.02.12 13:40:49.783 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1A,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:40:49.784 LISTENER ( ERROR ) : modhandler -- command: 'r' 13.02.12 13:40:49.809 LISTENER ( ERROR ) : modhandler -- dn: 'cn=share1B,cn=shares,dc=ucs3s4x2,dc=qa' 13.02.12 13:40:49.809 LISTENER ( ERROR ) : modhandler -- command: 'a' --------------------------------------------------------------------- univention-directory-listener-dump | grep -i share1A liefert danach nichts zurück.
UCS 3.0-1 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert werden: "Clone This Bug"