Bug 55565 - computerroom/exam/finish: AttributeError: invalid key 'gdm'
Summary: computerroom/exam/finish: AttributeError: invalid key 'gdm'
Status: RESOLVED DUPLICATE of bug 56937
Alias: None
Product: UCS@school
Classification: Unclassified
Component: UMC - Exam mode
Version: UCS@school 5.0
Hardware: amd64 Linux
: P5 normal
Target Milestone: UCS@school 5.0 v6-errata
Assignee: Johannes Königer
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-12 16:49 CET by patrick.hasler
Modified: 2024-11-06 13:47 CET (History)
4 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: ---
Who will be affected by this bug?: 5: Will affect all installed domains
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):
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 patrick.hasler 2023-01-12 16:49:27 CET
Server info:
version/version: 5.0-2 errata 431
appcenter/apps/ucsschool/version: 5.0 v3
appcenter/apps/ucsschool-veyon-proxy/version: 4.7.4.6-0

School exams cannot be terminated. A server restart did not help. As a workaround new computer rooms have been created and the issue did not appear there. 

There seems to be a similar, yet unresolved bug here: https://forge.univention.org/bugzilla/show_bug.cgi?id=54098

Error message:

Interner Server-Fehler in "computerroom/exam/finish".
AttributeError: invalid key 'gdm'
raise AttributeError("invalid key {!r}".format(userstr))
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/room_management.py", line 98, in validate_userstr
username = self.validate_userstr(userstr)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/room_management.py", line 106, in _read_user
return func(*args, **kwargs)
File "/usr/lib/python3/dist-packages/ucsschool/lib/school_umc_ldap_connection.py", line 156, in wrapper_func
self._read_user(user)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/room_management.py", line 92, in __getitem__
if x.user.current and x.connected()
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/room_management.py", line 254, in
for x in self.values()
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/room_management.py", line 253, in users
veyon_users = [x.lower() for x in self._computerroom.users if x]
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/__init__.py", line 952, in reset_smb_connections
self.reset_smb_connections()
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/__init__.py", line 814, in _settings_set
return func(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/__init__.py", line 208, in _decorated
self._settings_set(printMode="default", internetRule="none", shareMode="all", customRule="")
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/__init__.py", line 742, in finish_exam
yield function(self, *args)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/decorators.py", line 289, in _fake_func
return list(function(self, iterator, *nones))
File "/usr/lib/python3/dist-packages/univention/management/console/modules/decorators.py", line 443, in _response
return function(self, request)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/decorators.py", line 181, in _response
result = _multi_response(self, request)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/decorators.py", line 321, in _response
return func(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/univention/management/console/modules/computerroom/__init__.py", line 208, in _decorated
function.__func__(self, request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/univention/management/console/base.py", line 247, in execute
raise value
File "/usr/lib/python3/dist-packages/six.py", line 693, in reraise
six.reraise(etype, exc, etraceback)
File "/usr/lib/python3/dist-packages/univention/management/console/base.py", line 344, in __error_handling
Traceback (most recent call last):
Comment 2 joel.joos 2024-11-05 14:14:07 CET
Is there an update to this issue?
Comment 3 Jan-Luca Kiok univentionstaff 2024-11-06 13:39:55 CET
(In reply to joel.joos from comment #2)
> Is there an update to this issue?

Thanks for asking! This part of UCS@school has been revised in the last weeks and the traceback mentioned here should have been addressed by fixing Bug #56937 on the 02.07. as part of an erratum for UCS@school 5.0 v5: https://docs.software-univention.de/ucsschool-changelog/5.0v5/en/changelog.html#released-on-2024-07-02

Can you tell me which version of UCS@school you are using now?
Comment 4 Johannes Königer univentionstaff 2024-11-06 13:47:26 CET
The cause is a local user account, which is logged into one of the computers of the computer room. The account name (`gdm`) does not have a domain name prepended and this led to a crash as shown here before the fix of Bug #56937.

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