Bug 34785 - Warning in listener.log: "Schizophrenia: a NEW object..."
Warning in listener.log: "Schizophrenia: a NEW object..."
Status: RESOLVED DUPLICATE of bug 34835
Product: UCS
Classification: Unclassified
Component: Listener (univention-directory-listener)
UCS 3.2
Other Linux
: P1 normal (vote)
: ---
Assigned To: Philipp Hahn
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2014-05-08 22:53 CEST by Stefan Gohmann
Modified: 2014-05-22 14:43 CEST (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2014-05-08 22:53:34 CEST
Since Bug #34355 I got the following messages in the listener.log:

08.05.14 22:57:57.921  LISTENER    ( PROCESS ) : samba4-idmap: added entry for S-1-5-32-551
08.05.14 22:57:58.162  LISTENER    ( WARN    ) : Schizophrenia: a NEW object 'cn=IIS_IUSRS,cn=Builtin,dc=deadlock19,dc=local' is added, which ALREADY is in our cache for 'cn=IIS_IUSRS,cn=builtin,dc=deadlock19,dc=local'?

This is a default installation. Either we have a problem or the message has the wrong level (warn).
Comment 1 Philipp Hahn univentionstaff 2014-05-09 08:43:48 CEST
The message signals an inconsistency between the LDAP data an the listener cache, insofar as a NEW object is added. If the object would be really new, it couldn't already be in the listener cache, but it is.
So somehow the object
1. must have been creates (to get into the listener cache),
2. must have been moved in (or deleted from?) LDAP,
3. the listener did not update its cache,
4. must haven been moved again (or re-crated re-using the same UUID) to get that message.
As the cache information is now crucial for tracking moved objects, something already went wrong and may create fatal errors in the future.

As such I think the level WARN is appropriate, especially if your support must debug such a system.
If you always get this message, please increase debugging and track the create/modify/delete/move operations of said object to diagnose the underlying problem.
Comment 2 Philipp Hahn univentionstaff 2014-05-22 14:43:09 CEST
The log level was changed to PROCESS for Bug #34835 comment 3.

Doing an UCS-3.2-2 installation with listener/debug/level=4 showed the following behavior caused by differences in the case of the RDN "cn=[bB]uiltin":
# grep -i 'cn=Network Configuration Operators,cn=Builtin' /var/log/univention/listener.log

src/notifier.c:144 notifier_listen()
src/network.c:214 notifier_recv_result()
src/network.c:176 recv_block()
	603 cn=Network Configuration Operators,cn=builtin a
src/notifier.c:157 notifier_listen()
	notifier returned = id: 603    dn: cn=Network Configuration Operators,cn=builtin    cmd: a
src/change.c:648 change_update_dn()
	updating 'cn=Network Configuration Operators,cn=builtin' command a
src/change.c:650 change_update_dn()
src/cache.c:564 cache_get_entry_lower_upper()
src/cache.c:533 cache_get_entry()
	no cache entry found for cn=network configuration operators,cn=builtin
	no cache entry found for cn=Network Configuration Operators,cn=builtin
src/change.c:688 change_update_dn()
	updating by DN cn=Network Configuration Operators,cn=builtin
src/change.c:600 change_update_dn()
	Schizophrenia: a NEW object 'cn=Network Configuration Operators,cn=Builtin' is added, which ALREADY is in our cache for 'cn=Network Configuration Operators,cn=builtin'?
src/change.c:602 change_update_dn()
src/change.c:252 change_update_entry()
src/cache.c:564 cache_get_entry_lower_upper()
src/cache.c:533 cache_get_entry()
	no cache entry found for cn=network configuration operators,cn=builtin
	no cache entry found for cn=Network Configuration Operators,cn=Builtin
src/change.c:259 change_update_entry()
src/handlers.c:832 handlers_update()
	running handlers for cn=Network Configuration Operators,cn=Builtin
src/change.c:261 change_update_entry()
src/change.c:433 cache_update_entry_lower()
src/change.c:412 cache_update_entry()
	put 1207 bytes for cn=network configuration operators,cn=builtin

This is fixed by
1. fixing the notifier to use the normalized DN (r13111, openldap_2.4.35-1.160.201405221112)
2. using strcacecmp() for now (r50552)
3. Changing the level to PROCESS (r50551)

*** This bug has been marked as a duplicate of bug 34835 ***