Bug 32877 - Opening a user stalls when the objectFlag is integrated in the layout
Opening a user stalls when the objectFlag is integrated in the layout
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - Domain management (Generic)
UCS 3.1
Other Linux
: P5 normal (vote)
: UCS 3.2
Assigned To: Alexander Kläser
Lukas Walter
: interim-3
Depends on:
Blocks: 31408
  Show dependency treegraph
 
Reported: 2013-10-16 11:37 CEST by Alexander Kläser
Modified: 2013-11-19 06:42 CET (History)
2 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:
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 Alexander Kläser univentionstaff 2013-10-16 11:37:35 CEST
(In reply to Stefan Gohmann from comment #6)
> Users and groups can not be loaded in UMC if this extended attribute is
> available. The progress bar stalls at 99%. After removing this extended
> attributes everything works fine.
Comment 1 Alexander Kläser univentionstaff 2013-10-16 13:00:43 CEST
Fixed. The problem was that the UMC module rendered widgets for all properties. However, as objectFlag was not part of the layout, the form waited indefinitely for the objectFlag ComboBox to finish being rendered (and loading its values).

In the backend, I added a check to remove elements from the properties that are not visibile in the layout.


 univention-management-console-module-udm (4.0.45-1) unstable; urgency=low
 .
   * Bug #32877: make sure that properties are only returned if they are
     specified in the module layout
Comment 2 Dirk Wiesenthal univentionstaff 2013-10-17 01:03:45 CEST
Options are gone. Maybe because not specified in layout explicitely?
Comment 3 Alexander Kläser univentionstaff 2013-10-17 11:25:49 CEST
(In reply to Dirk Wiesenthal from comment #2)
> Options are gone. Maybe because not specified in layout explicitely?

Oops, yes, exactly. Fixed.

 univention-management-console-module-udm (4.0.46-1) unstable; urgency=low
 .
   * Bug #32877: re-enable module options
   * Bug #32218: adjusted label of toggle button for search options
Comment 4 Lukas Walter univentionstaff 2013-10-21 14:10:21 CEST
ok: label is gone
ok: indentation is correct

Changelog entry is missing
Comment 5 Lukas Walter univentionstaff 2013-10-21 14:15:36 CEST
(In reply to Lukas Walter from comment #4)
> ok: label is gone
> ok: indentation is correct
> 
> Changelog entry is missing

This belongs to another bug.



Regarding this bug:
Error does not occur anymore.
Changelog entry is also missing.
Comment 6 Alexander Kläser univentionstaff 2013-10-23 18:50:36 CEST
Added changelog entry.
Comment 7 Lukas Walter univentionstaff 2013-10-24 16:08:10 CEST
OK
Comment 8 Florian Best univentionstaff 2013-10-25 14:08:45 CEST
Open udm/self will result in traceback due to this changes. Probably you are also removing '$dn$' ?

Traceback:
Die Ausführung des Kommandos udm/properties ist fehlgeschlagen:

Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/univention/management/console/modules/__init__.py",
line 204, in execute
    func( request )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py", line
728, in properties
    properties = module.get_properties( object_dn )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py", line
605, in get_properties
    _scanLayout(self.get_layout(ldap_dn))
  File
"/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py", line
553, in get_layout
    mod = get_module( None, ldap_dn )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py", line
175, in wrapper_func
    ret = func( *args, **kwargs )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py", line
969, in get_module
    modules = udm_modules.objectType( None, ldap_connection, ldap_dn, module_base = base )
  File "/usr/lib/pymodules/python2.6/univention/admin/modules.py", line 842, in objectType
    attr = lo.get( dn )
  File "/usr/lib/pymodules/python2.6/univention/admin/uldap.py", line 338, in get
    return self.lo.get(dn, attr, required)
  File "/usr/lib/pymodules/python2.6/univention/uldap.py", line 260, in get
    '(objectClass=*)', attr )
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 502, in search_s
    return
self.search_ext_s(base,scope,filterstr,attrlist,attrsonly,None,None,timeout=self.timeout)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 814, in search_ext_s
    return self._apply_method_s(SimpleLDAPObject.search_ext_s,*args,**kwargs)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 766, in _apply_method_s
    return func(self,*args,**kwargs)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 496, in search_ext_s
    return self.result(msgid,all=1,timeout=timeout)[1]
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 422, in result
    res_type,res_data,res_msgid = self.result2(msgid,all,timeout)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 426, in result2
    res_type, res_data, res_msgid, srv_ctrls = self.result3(msgid,all,timeout)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 432, in result3
    ldap_result = self._ldap_call(self._l.result3,msgid,all,timeout)
  File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 96, in _ldap_call
    result = func(*args,**kwargs)
INVALID_DN_SYNTAX: {'info': 'invalid DN', 'desc': 'Invalid DN syntax'}
Comment 9 Florian Best univentionstaff 2013-10-25 14:21:42 CEST
I fixed this by adding '$dn$' to the allowed set(). I think this is correct, can you check @Alex?

univention-management-console-module-udm (4.0.62-1)
* Bug #32877: add $dn$ to layout properties
Comment 10 Alexander Kläser univentionstaff 2013-10-29 10:20:48 CET
(In reply to Florian Best from comment #9)
> I fixed this by adding '$dn$' to the allowed set(). I think this is correct,
> can you check @Alex?
> 
> univention-management-console-module-udm (4.0.62-1)
> * Bug #32877: add $dn$ to layout properties

Yes this looks fine, thanks.
Comment 11 Lukas Walter univentionstaff 2013-10-29 16:45:15 CET
(In reply to Alexander Kläser from comment #10)
> (In reply to Florian Best from comment #9)
> > I fixed this by adding '$dn$' to the allowed set(). I think this is correct,
> > can you check @Alex?
> > 
> > univention-management-console-module-udm (4.0.62-1)
> > * Bug #32877: add $dn$ to layout properties
> 
> Yes this looks fine, thanks.

Traceback still occurs.
Comment 12 Alexander Kläser univentionstaff 2013-10-30 10:30:56 CET
(In reply to Lukas Walter from comment #11)
> (In reply to Alexander Kläser from comment #10)
> > (In reply to Florian Best from comment #9)
> > > I fixed this by adding '$dn$' to the allowed set(). I think this is correct,
> > > can you check @Alex?
> > > 
> > > univention-management-console-module-udm (4.0.62-1)
> > > * Bug #32877: add $dn$ to layout properties
> > 
> > Yes this looks fine, thanks.
> 
> Traceback still occurs.

I fixed this while working on Bug 32978, this traceback was due to that bug.
Comment 13 Lukas Walter univentionstaff 2013-10-30 11:46:49 CET
OK, does traceback is gone.
Comment 14 Stefan Gohmann univentionstaff 2013-11-19 06:42:15 CET
UCS 3.2 has been released:
 http://docs.univention.de/release-notes-3.2-en.html
 http://docs.univention.de/release-notes-3.2-de.html

If this error occurs again, please use "Clone This Bug".