Univention Bugzilla – Bug 40240
Performance optimization for App Center: UCR
Last modified: 2016-02-04 14:10:10 CET
One way might be caching of UCR. Currently, UCR is initialized in a lot of local functions. This way one does not have to think about thread safety, concurrent processes and so on. But it may cost too much time. +++ This bug was initially created as a clone of Bug #39632 +++ Startup performance for the UMC module is mediocre. We should elaborate ways to enhance execution speed. One way might be caching of UCR. Currently, UCR is initialized in a lot of local functions. This way one does not have to think about thread safety, concurrent processes and so on. But it may cost too much time. LDAP lookups may also be reduced, although this has already seen one patch.
Fixed in univention-appcenter 5.0.19-28.86.201512140023
(In reply to Dirk Wiesenthal from comment #0) > One way might be caching of UCR. Currently, UCR is initialized in a lot of > local functions. This way one does not have to think about thread safety, > concurrent processes and so on. But it may cost too much time. Do you have any indications that UCR variable loading is a bottle neck w.r.t. performance?
Before patch: time umc-command appcenter/query -U Administrator -P univention real 0m10.883s user 0m0.280s sys 0m0.036s After patch: (no pickle files yet) time umc-command appcenter/query -U Administrator -P univention real 0m5.629s user 0m0.272s sys 0m0.036s
ucr is still a argument of get_app_ldap_object(): python/appcenter/udm.py:def get_app_ldap_object(app, lo=None, pos=None, ucr=None, or_create=False):
Yes, left it there for backwards compatibility, but I guess this is silly (as I changed ApplicationLDAPObject, too). univention-appcenter 5.0.19-38.95.201601050043
OK
<http://errata.software-univention.de/ucs/4.1/79.html>