Bug 38242 - KeyError: 'oxBirthday'
KeyError: 'oxBirthday'
Status: REOPENED
Product: Z_Internal OX development
Classification: Unclassified
Component: Generic
UCS 5.0 / 7.10.5
Other Linux
: P5 normal (vote)
: ---
Assigned To: Mail maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2015-04-13 11:39 CEST by Florian Best
Modified: 2023-10-12 14:29 CEST (History)
6 users (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: 2022052421000302, 2020080621000899, 2020120721000585, 2022051021000418, 2022051021000427, 2022100221000263, 2022090421000066, 2023090421000573, 2023050221000119, 2023101221000153
Bug group (optional): Error handling, External feedback
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2015-04-13 11:39:27 CEST
We received the following traceback, 4.0-0 errata48 (Walle).

Happens when adding a user.

Extended attribute was removed during use of UDM? Currently not sure how to reproduce, might be fixed with a current UCS version.

Execution of command 'udm/add users/user' has failed:

Traceback (most recent call last):
  File "%PY2.7%/univention/management/console/modules/__init__.py", line 176, in _decorated
    return function(self, request, *args, **kwargs)
  File "%PY2.7%/notifier/threads.py", line 82, in _run
    tmp = self._function()
  File "%PY2.7%/notifier/__init__.py", line 104, in __call__
    return self._function( *tmp, **self._kwargs )
  File "%PY2.7%/univention/management/console/modules/udm/__init__.py", line 370, in _thread
    dn = module.create(properties, container=options.get('container'), superordinate=options.get('superordinate'))
  File "%PY2.7%/univention/management/console/modules/udm/udm_ldap.py", line 159, in _decorated
    return func(*args, **kwargs)
  File "%PY2.7%/univention/management/console/modules/udm/udm_ldap.py", line 139, in wrapper_func
    ret = func(*args, **kwargs)
  File "%PY2.7%/univention/management/console/modules/udm/udm_ldap.py", line 487, in create
    obj.create()
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 352, in create
    return self._create()
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 693, in _create
    self.call_udm_property_hook('hook_ldap_pre_create', self)
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 593, in call_udm_property_hook
    func(module)
  File "%PY2.7%/univention/admin/hooks.d/oxAccess.py", line 155, in hook_ldap_pre_create
    self.check_syntax_date(module)
  File "%PY2.7%/univention/admin/hooks.d/oxAccess.py", line 118, in check_syntax_date
    if module['oxBirthday']:
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 302, in __getitem__
    elif not key in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'
Comment 1 Stefan Gohmann univentionstaff 2019-01-03 07:18:28 CET
This issue has been filled against UCS 4.0. The maintenance with bug and security fixes for UCS 4.0 has ended on 31st of May 2016.

Customers still on UCS 4.0 are encouraged to update to UCS 4.3. Please contact
your partner or Univention for any questions.

If this issue still occurs in newer UCS versions, please use "Clone this bug" or simply reopen the issue. In this case please provide detailed information on how this issue is affecting you.
Comment 2 Christian Castens univentionstaff 2020-08-07 18:06:50 CEST
reported again:

Version: 4.4-5 errata703 (Blumenthal)

Error:
Internal server error during "udm/add (users/user)".
Request: udm/add (users/user)

  File "%PY2.7%/notifier/threads.py", line 80, in _run
    result = self._function()
  File "%PY2.7%/notifier/__init__.py", line 104, in __call__
    return self._function(*tmp, **self._kwargs)
  File "%PY2.7%/univention/management/console/modules/udm/__init__.py", line 402, in _thread
    dn = module.create(properties, container=options.get('container'), superordinate=options.get('superordinate'))
  File "%PY2.7%/univention/management/console/modules/udm/udm_ldap.py", line 566, in create
    obj.create()
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 557, in create
    dn = self._create(response=response, serverctrls=serverctrls)
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 1233, in _create
    self.call_udm_property_hook('hook_ldap_pre_create', self)
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 1054, in call_udm_property_hook
    func(module)
  File "%PY2.7%/univention/admin/hooks.d/oxAccess.py", line 163, in hook_ldap_pre_create
    self.check_syntax_date(module)
  File "%PY2.7%/univention/admin/hooks.d/oxAccess.py", line 129, in check_syntax_date
    if module['oxBirthday']:
  File "%PY2.7%/univention/admin/handlers/__init__.py", line 478, in __getitem__
    elif key not in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'

Role: domaincontroller_master

Errno: d012d3b633824fe916064798bf464aef
Comment 3 Daniel Tröder univentionstaff 2020-08-10 08:49:58 CEST
App version required.
Comment 4 Florian Best univentionstaff 2020-08-10 08:53:43 CEST
(In reply to Daniel Tröder from comment #3)
> App version required.

We cannot send this version along with traceback reports.
Comment 5 Daniel Tröder univentionstaff 2020-08-10 09:16:27 CEST
Without this information this bug report cannot be handled.
→ Bug #49502.
Comment 6 Florian Best univentionstaff 2020-08-10 09:43:14 CEST
(In reply to Daniel Tröder from comment #5)
> Without this information this bug report cannot be handled.
> → Bug #49502.
Don't close bugs just because you don't understand the cause.
Comment 7 Daniel Tröder univentionstaff 2020-08-10 14:28:21 CEST
The state I put it in is "WONTFIX", because it won't.
Keeping a useless bug report open will not change that fact.
But useless data does distract from useful work. So it should be removed.

A bug that happend once in 2015 and once in 2020 and that does not have sufficient information cannot be handled → WONTFIX.

If anyone can contribute _useful_ information to this bug, *then* it can be reopened. Until then it simply won't be fixed → WONTFIX.
Comment 8 Maximilian Janßen univentionstaff 2022-05-11 09:58:22 CEST
Version: 5.0-1 errata279

Error: 
Interner Server-Fehler in "udm/put (users/user)".
Request: udm/put (users/user)

Traceback (most recent call last):
  File "%PY3%/notifier/threads.py", line 80, in _run
    result = self._function()
  File "%PY3%/notifier/__init__.py", line 105, in __call__
    return self._function(*tmp, **self._kwargs)
  File "%PY3%/univention/management/console/modules/udm/__init__.py", line 442, in _thread
    module.modify(properties)
  File "%PY3%/univention/management/console/modules/udm/udm_ldap.py", line 649, in modify
    obj.modify()
  File "%PY3%/univention/admin/handlers/users/user.py", line 1501, in modify
    return super(object, self).modify(*args, **kwargs)
  File "%PY3%/univention/admin/handlers/__init__.py", line 638, in modify
    dn = self._modify(modify_childs, ignore_license=ignore_license, response=response)
  File "%PY3%/univention/admin/handlers/__init__.py", line 1334, in _modify
    self.call_udm_property_hook('hook_ldap_pre_modify', self)
  File "%PY3%/univention/admin/handlers/__init__.py", line 1068, in call_udm_property_hook
    func(module)
  File "<string>", line 187, in hook_ldap_pre_modify
  File "<string>", line 129, in check_syntax_date
  File "%PY3%/univention/admin/handlers/__init__.py", line 466, in __getitem__
    elif key not in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'

Role: domaincontroller_master
Comment 9 Mika Westphal univentionstaff 2022-10-27 18:04:12 CEST
Version: 5.0-2 errata441

Remark: Fehler bei hinzufügen von Gruppen je User

Error:
Interner Server-Fehler in "udm/put (users/user)".
Request: udm/put (users/user)

Traceback (most recent call last):
  File "%PY3%/notifier/threads.py", line 80, in _run
    result = self._function()
  File "%PY3%/notifier/__init__.py", line 105, in __call__
    return self._function(*tmp, **self._kwargs)
  File "%PY3%/univention/management/console/modules/udm/__init__.py", line 448, in _thread
    module.modify(properties)
  File "%PY3%/univention/management/console/modules/udm/udm_ldap.py", line 650, in modify
    obj.modify()
  File "%PY3%/univention/admin/handlers/users/user.py", line 1527, in modify
    return super(object, self).modify(*args, **kwargs)
  File "%PY3%/univention/admin/handlers/__init__.py", line 648, in modify
    dn = self._modify(modify_childs, ignore_license=ignore_license, response=response)
  File "%PY3%/univention/admin/handlers/__init__.py", line 1344, in _modify
    self.call_udm_property_hook('hook_ldap_pre_modify', self)
  File "%PY3%/univention/admin/handlers/__init__.py", line 1078, in call_udm_property_hook
    func(module)
  File "<string>", line 187, in hook_ldap_pre_modify
  File "<string>", line 129, in check_syntax_date
  File "%PY3%/univention/admin/handlers/__init__.py", line 476, in __getitem__
    elif key not in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'

Role: domaincontroller_master
Comment 10 Christina Scheinig univentionstaff 2023-05-02 11:29:23 CEST
Happens during Import:

UCS: 5.0-3 errata642
Ox-Connector: 2.1.3
 
Importdatei:
Personalnummer
	Nachname
	Vorname
 
Fehlermeldung:
2023-04-28 12:28:16 ERROR mass_import.import_users:128  'oxBirthday'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/ucsschool/importer/mass_import/mass_import.py", line 118, in import_users
    user_import.create_and_modify_users(imported_users)  # 90% - 100%
  File "/usr/lib/python3/dist-packages/ucsschool/importer/mass_import/user_import.py", line 203, in create_and_modify_users
    success = user.create(lo=self.connection)
  File "/usr/lib/python3/dist-packages/ucsschool/importer/models/import_user.py", line 380, in create
    lo, validate, check_password_policies=check_password_policies
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/user.py", line 277, in create
    return super(User, self).create(lo=lo, validate=validate)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 552, in create
    success = self.create_without_hooks(lo, validate)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 582, in create_without_hooks
    self.do_create(udm_obj, lo)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/user.py", line 315, in do_create
    success = super(User, self).do_create(udm_obj, lo)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 607, in do_create
    udm_obj.create()
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 557, in create
    dn = self._create(response=response, serverctrls=serverctrls)
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1260, in _create
    self.call_udm_property_hook('hook_ldap_pre_create', self)
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1077, in call_udm_property_hook
    func(module)
  File "<string>", line 163, in hook_ldap_pre_create
  File "<string>", line 129, in check_syntax_date
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 479, in __getitem__
    elif key not in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'
Comment 11 Norbert Tretkowski univentionstaff 2023-10-12 13:22:37 CEST
Still an issue, happens after upgrading from OX Connector 2.1.3 to 2.2.7:

2023-10-12 10:09:47 ERROR 'oxBirthday'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/ucsschool/importer/mass_import/mass_import.py", line 118, in import_users
    user_import.create_and_modify_users(imported_users)  # 90% - 100%
  File "/usr/lib/python3/dist-packages/ucsschool/importer/mass_import/user_import.py", line 206, in create_and_modify_users
    success = user.create(lo=self.connection)
  File "/usr/lib/python3/dist-packages/ucsschool/importer/models/import_user.py", line 380, in create
    lo, validate, check_password_policies=check_password_policies
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/user.py", line 277, in create
    return super(User, self).create(lo=lo, validate=validate)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 552, in create
    success = self.create_without_hooks(lo, validate)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 582, in create_without_hooks
    self.do_create(udm_obj, lo)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/user.py", line 315, in do_create
    success = super(User, self).do_create(udm_obj, lo)
  File "/usr/lib/python3/dist-packages/ucsschool/lib/models/base.py", line 607, in do_create
    udm_obj.create()
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 557, in create
    dn = self._create(response=response, serverctrls=serverctrls)
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1265, in _create
    self.call_udm_property_hook('hook_ldap_pre_create', self)
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1077, in call_udm_property_hook
    func(module)
  File "<string>", line 163, in hook_ldap_pre_create
  File "<string>", line 129, in check_syntax_date
  File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 479, in __getitem__
    elif key not in self.__no_default and self.descriptions[key].editable:
KeyError: 'oxBirthday'
Comment 12 Norbert Tretkowski univentionstaff 2023-10-12 14:29:37 CEST
Restarting ucs-school-import-http-api, rabbitmq-server and ucs-school-import-celery-worker fixed the issue in the Schulportal SH environment.