On 21.3.2016 11:00, Petr Vobornik wrote:
On 03/17/2016 04:09 PM, Martin Basti wrote:
I would like to discuss the way how we should improve the speed of
user-find commands (and other commands too if possible):
Do not do extra search for ipasshpubkey. This is clear, patch posted for
commands: user, stageuser, host, idview
make --no-members option visible in CLI
There was a discussion around devconf that --no-members should be a
default behavior of xxx-find commands and I'm for it.
+1, although we should be backward compatible with old clients which
expect the attributes to be there.
Reasoning: use case: 'find me all groups which satisfy this filter'.
Showing members clutters the output(one group with >500 member makes it
unusable) and makes things slow(both on server and CLI side).
For xxx-show commands it is a question where I don't have a strong opinion.
I think it shouldn't hurt to keep them in -show commands, as there is
always only a single entry to process.
I don't think we should implement also --no-indirect-members, I think
that this kind of granularity is not needed.
If --no-members is used, then indirect members will be ignored too.
commands: all which use members
Limit the amount of searches for memberof[indirect] (group, netgroup,
role, hbacrule, sudorule) and search for each dn only once in find
We can have configurable option in default.conf (for example
memberof_search_limit=100 (0 unlimited)). Find commands will get members
only for specified amount and if this limit is exceeded a warning
message is shown.
I do not like this idea much, I think it should be all or nothing, I
prefer to not do this.
However I like the idea of temporary caching inside find commands, where
each memberof DN is resolved just once and results are cached in a map
and reused in current context of command. This should be improvement
mainly for indirect searches, but cache should be faster for direct
members than doing internal calls of framework objects. This part is
backward compatible, the first part is not.
What parts of the ticket can be solved with deref plugin? I guess we can
get the CNs, but not what is a direct member. Maybe it should be
Indirect members are already resolved by a single LDAP search. What kind
of additional optimization would you like to do for them?
commands: user-find, stageuser-find, possibly all find commands
Remove userPassword, krbPrincipalKey from search results
This change is not backward compatible, can we do this?
I'm for it, would like to hear other opinions.
Note: it should be only in user-find commands. 'show' has to display it.
Manage your subscription for the Freeipa-devel mailing list:
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code