Bug 58116 - 2 simultaneous exams with the same multi-OU users not possible if ucsschool/exam/user/disable=yes
Summary: 2 simultaneous exams with the same multi-OU users not possible if ucsschool/e...
Status: CLOSED FIXED
Alias: None
Product: UCS@school
Classification: Unclassified
Component: UMC - Exam mode
Version: UCS@school 5.0
Hardware: Other Linux
: P5 normal
Target Milestone: UCS@school 5.0 v7-errata
Assignee: Ole Schwiegert
QA Contact: Sönke Schwardt-Krummrich
URL:
Keywords:
Depends on: 58093
Blocks:
  Show dependency treegraph
 
Reported: 2025-03-25 09:13 CET by Ole Schwiegert
Modified: 2025-04-03 11:44 CEST (History)
2 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?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Customer ID:
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ole Schwiegert univentionstaff 2025-03-25 09:13:30 CET
+++ This bug was initially created as a clone of Bug #58093 +++

This bug is tracked in https://git.knut.univention.de/univention/ucsschool/-/issues/1394
Comment 1 Ole Schwiegert univentionstaff 2025-03-25 10:23:44 CET
Using the exam mode with multi-school users leads to errors if a user writes an exam in two different workgroups/classes at the same time (no matter if same or different school).

The following scenario was used to reproduce the issue but it will also happen if the same school is used:

- There are the schools `gsmitte` and `gsost`.
- The user `multi1` is located below the school OU `gsmitte` and is set up correctly for both schools:
  ```
  dn: uid=multi1,cn=schueler,cn=users,ou=gsmitte,dc=nstx,dc=de
  uid: multi1
  univentionObjectType: users/user
  ucsschoolSchool: gsmitte
  ucsschoolSchool: gsost
  ucsschoolRole: student:school:gsmitte
  ucsschoolRole: student:school:gsost
  homeDirectory: /home/gsmitte/schueler/multi1
  sambaHomePath: \\dcmitte\multi1
  ...
  ```
- If an exam `Ost3` is now started at one of the two schools (here `gsost`), a test user is created correctly in `gsmitte` "next to the normal user":
  ```
  dn: uid=exam-multi1,cn=examusers,ou=gsmitte,dc=nstx,dc=de
  univentionObjectType: users/user
  univentionObjectFlag: temporary
  uid: e-multi1
  ucsschoolSchool: gsost
  ucsschoolSchool: gsmitte
  ucsschoolRole: exam_user:school:gsost
  ucsschoolRole: exam_user:school:gsmitte
  ucsschoolRole: exam_user:exam:Ost3-gsost
  ...
  ```
- This user is also included as a member in all groups in which the user `multi1` is also included.
- If the second school (here `gsmitte`) starts an exam `Mitte3` with a group that also contains the user `multi1`, the second exam is not implemented correctly for this user in LDAP. The attribute `ucsschoolRole` does NOT also contain an entry for the second exam in `gsmitte`: The entry `ucsschoolRole: exam_user:exam:Mitte3-gsmitte` is missing. Furthermore, `multi1` is not included in the exam group `OUgsmitte-Klassenarbeit`.

This now has 2 effects on the exam user:
- GPOs at the second school may not be applied to the exam user because the user is not included in their exam group.
- If the first school finishes its exam, the exam user is deleted from the LDAP and is no longer available for the second exam (this affects access to the home directory, submission of results, access to the HTTP proxy, ...).
However, no error message or similar is displayed, so that the exam is not affected for all other (single-school) users or user for which is only one exam started.
When reproducing, it was irrelevant whether the first exam was started in `gsmitte` or `gsost` and then the second class test in the other school. In both cases, the result was similar.
  - Update: the same problem occurs if the 2 exams have been started on the same school replica.
Comment 2 Ole Schwiegert univentionstaff 2025-03-25 10:31:23 CET
Package: ucs-school-umc-exam
Version: 10.0.16
Branch: ucs_5.0-0-ucs-school-5.0
Scope: ucs-school-5.0

Package: ucs-test-ucsschool
Version: 7.3.201
Branch: ucs_5.0-0-ucs-school-5.0
Scope: ucs-school-5.0
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2025-03-25 10:32:09 CET
MR has been checked. Ready for merge.
Comment 4 Ole Schwiegert univentionstaff 2025-04-03 11:44:03 CEST
Errata updates for UCS@school 5.0 v7 have been released.

https://docs.software-univention.de/ucsschool-changelog/5.0v7/en/changelog.html
https://docs.software-univention.de/ucsschool-changelog/5.0v7/de/changelog.html

If this error occurs again, please clone this bug.