Bug 48801 - univention-join slowed down by missing indices
univention-join slowed down by missing indices
Product: UCS
Classification: Unclassified
Component: LDAP
UCS 4.4
Other Linux
: P5 normal (vote)
: UCS 4.4
Assigned To: Arvid Requate
Erik Damrose
Depends on: 47944
Blocks: 47940
  Show dependency treegraph
Reported: 2019-02-27 09:29 CET by Daniel Tröder
Modified: 2019-03-12 13:40 CET (History)
2 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 2: Improvement: Would be a product improvement
Who will be affected by this bug?: 5: Will affect all 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.114
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Tröder univentionstaff 2019-02-27 09:29:48 CET
univention-join is slowed down because of missing indices.

Feb 26 18:22:26 m66 slapd[1728]: <= mdb_equality_candidates: (univentionDataType) not indexed
Comment 1 Arvid Requate univentionstaff 2019-03-06 17:59:03 CET
The following attributes have been added since UCS 4.3-2, which are not marked as "dontsearch" in the respective UDM modules, so I guess they should all be indexed:

univentionData                       (eq, sub)
univentionDataType                   (eq, sub)
univentionDataMeta                   (eq, sub)
univentionDataFilename               (eq, sub)

univentionPortalLinks                (eq, sub)
univentionPortalContent              (eq, sub)
univentionPortalCategoryDisplayName  (eq, sub)

univentionUDMOptionIsApp             (eq)

With univentionUDMOptionIsApp it's a bit the question if we want to index that, becasue it's boolean and it doesn't make much sense to include in the search for "default properties" in the first place. The same could be said about the majority of other attributes above.

Additional extended attributes with doNotSearch=0:

univentionRadiusClientVirtualServer  (eq, sub) 
univentionRadiusClientType           (eq, sub)
Comment 2 Arvid Requate univentionstaff 2019-03-06 18:17:03 CET
Ok, as Florian explained to me the properties without "dontsearch" flag are just searchable explicitly in the udm_ldap browser UMC module.

The properties included in the standard "Default Properties" object search filter have to marked as "include_in_default_search". None of the attributes mentioned in Comment 1 fulfills this criterion. So it's not a "hot" use case to search for these attributes and we probably don't need to index them.

Do just add univentionDataType, which is explicitly searched for in the new univention-join-hooks script (via udm_module.lookup).
Comment 3 Daniel Tröder univentionstaff 2019-03-07 08:34:13 CET
(In reply to Arvid Requate from comment #2)
> Do just add univentionDataType, which is explicitly searched for in the new
> univention-join-hooks script (via udm_module.lookup).
OK. A quick scan of the UCS git repo turned up only LDAP filters using univentionDataType.

univentionDataMeta ist evaluated only in code and not in a filter (e.g. https://git.knut.univention.de/univention/ucs/blob/dtroeder/40609_prevent_forged_sender/mail/univention-mail-postfix/modules/univention/mail/sender_check_milter_base.py#L90).
So IMHO it's not (yet) necessary to index it.
Comment 4 Arvid Requate univentionstaff 2019-03-07 16:18:01 CET
d1d68d4a47 | Add univentionDataType to default LDAP index

Package: univention-ldap
Version: 15.0.0-14A~
Branch: ucs_4.4-0
Comment 5 Erik Damrose univentionstaff 2019-03-07 17:28:13 CET
OK: univentionDataMeta in eq index
OK: changelog
Comment 6 Florian Best univentionstaff 2019-03-12 13:40:44 CET
UCS 4.4 has been released:

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