Bug 55260 - strange warnings for classes since ASMC 3.0.0
strange warnings for classes since ASMC 3.0.0
Status: NEW
Product: UCS@school
Classification: Unclassified
Component: Apple School Manager
UCS@school 5.0
Other Linux
: P5 normal (vote)
: ---
Assigned To: UCS@school maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2022-10-12 17:37 CEST by Dirk Ahrnke
Modified: 2023-08-14 17:03 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 4: Minor Usability: Impairs usability in secondary scenarios
Who will be affected by this bug?: 2: Will only affect a few installed domains
How will those affected feel about the bug?: 2: A Pain – users won’t like this once they notice it
User Pain: 0.091
Enterprise Customer affected?:
School Customer affected?: Yes
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 Dirk Ahrnke univentionstaff 2022-10-12 17:37:08 CEST
The mail cause by the asmc cronjob now reports problems for existing classes:

Creating ZIP file in /var/lib/asm/asm_2022-10-11T15:00:05.870008.zip...
Creating CSV files for OUs mas...
UDM object 'cn=mas-5a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-5b,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-6a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-7a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-8a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-9a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-10A,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
Writing 7 objects to classes.csv...
UDM object 'cn=mas-5a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-5b,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-6a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-7a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-8a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-9a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-10A,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
Writing 7 objects to courses.csv...
Writing 1 objects to locations.csv...
UDM object 'cn=mas-5a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-5b,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-6a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-7a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-8a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-9a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=mas-10A,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs' does not correspond to a Python class in the UCS school lib.

It is unclear what is causing the error as the diagnostic modules do not appear to see a problem with those classes. 

For larger environments this will make the status e-mails unreadable as most likely all classes that are handled by ASMC will appear up to three times
Comment 1 Daniel Tröder univentionstaff 2022-10-13 08:31:41 CEST
Please attach an LDIF of an effected class and one of an uneffected class.
Comment 2 Dirk Ahrnke univentionstaff 2022-10-13 09:17:05 CEST
there are no unaffected classes:

root@dn1:~# univention-ldapsearch -LLL "(&(objectClass=ucsschoolGroup)(ucsschoolRole=school_class*))" 1.1 | grep ^dn
dn: cn=mas-5a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-5b,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-6a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-7a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-8a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-9a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
dn: cn=mas-10A,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs


example for one class:

root@dn1:~# univention-ldapsearch -LLL "(&(cn=mas-5a)(objectClass=univentionGroup))"
dn: cn=mas-5a,cn=klassen,cn=schueler,cn=groups,ou=mas,dc=training,dc=ucs
sambaGroupType: 2
cn: mas-5a
objectClass: posixGroup
objectClass: univentionObject
objectClass: sambaGroupMapping
objectClass: top
objectClass: univentionGroup
objectClass: ucsschoolGroup
univentionObjectType: groups/group
sambaSID: S-1-5-21-2285441002-1207377022-1688818709-11183
gidNumber: 5091
ucsschoolRole: school_class:school:mas
univentionGroupType: -2147483646
description: 5a
uniqueMember: uid=ankwen,cn=lehrer,cn=users,ou=mas,dc=training,dc=ucs
memberUid: ankwen


This class was most likely created manually by using UMC-functionality.

In addition it has to be mentioned that the problem was already noticed by customer 11818. They modified the cronjob in a way to exclude those warnings as several hundreds or thousands of classes exist.
Comment 3 Daniel Tröder univentionstaff 2022-10-13 12:01:29 CEST
* Please write here the values of the UCRVs starting with ucsschool/ldap/default/container

* What UCS and UCS@school version is running there?
Comment 4 Dirk Ahrnke univentionstaff 2022-10-13 15:10:48 CEST
> * Please write here the values of the UCRVs starting with
> ucsschool/ldap/default/container

ucsschool/ldap/default/container/admins: admins
ucsschool/ldap/default/container/exam: <empty>
ucsschool/ldap/default/container/pupils: schueler
ucsschool/ldap/default/container/staff: mitarbeiter
ucsschool/ldap/default/container/teachers-and-staff: lehrer und mitarbeiter
ucsschool/ldap/default/container/teachers: lehrer

> 
> * What UCS and UCS@school version is running there?

verified even after applying all updates 
UCS: 5.0-2 errata460
ucsschool=5.0 v3
Comment 5 Ingo Jürgensmann univentionstaff 2022-12-20 13:46:28 CET
Same is happening with another customer (11818) since the upgrade to UCS 5.0 and therefor of the ASM app as well. Did not happen with UCS 4.4 app, though: 

Creating ZIP file in /var/lib/asm/asm_2022-12-20T00:00:08.492856.zip...
Creating CSV files for OUs 150, 151, 152, 153, 154, 155, 156, 157, 159, 160, 163, 164, 165, 166, 167, 168, 169, 170, 174, 176, 180, 331, 333, 334, 349, 382, 383, 384, 385, 386, 451, 452, 456, 457, 458, 551, 552, 553, 554, 780, 998...
UDM object 'cn=150-1 AUFN,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF1-2a,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF1-2d,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF3-4a,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF3-4b,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF3-4c,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.
UDM object 'cn=150-KF3-4d,cn=klassen,cn=schueler,cn=groups,ou=150,dc=schule,dc=customer,dc=intranet' does not correspond to a Python class in the UCS school lib.

ucsschool/ldap/default/container/admins: admins
ucsschool/ldap/default/container/exam: <empty>
ucsschool/ldap/default/container/pupils: schueler
ucsschool/ldap/default/container/staff: mitarbeiter
ucsschool/ldap/default/container/teachers-and-staff: lehrer und mitarbeiter
ucsschool/ldap/default/container/teachers: lehrer

root@ucs01:~# univention-app info
UCS: 5.0-2 errata515
Installed: apple-school-manager=3.0.0 letsencrypt=2.0.0-2 prometheus-node-exporter=2.0.1 self-service=5.0 self-service-backend=5.0 ucsschool=5.0 v3
Comment 6 Markus Dählmann 2023-07-14 09:11:14 CEST
I opened a ticket about these "fake" warning messages almost a year ago (Ticket#2022072121000224).
They are really annoying and they flood the outputs of several UCS@School related Python scripts, not just the ASM connector, making it harder to debug their outputs.
One other example would be /usr/share/ucs-school-import/scripts/migrate_ucsschool_roles.
Would really appreciate a fix for this at some point.