-
Notifications
You must be signed in to change notification settings - Fork 27
Subgroup Member Search strategy optimizations #78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
return entries_by_uid(uids) if uids.any? | ||
|
||
# track group | ||
searched << group.dn |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I can tell, searched
tracks DNs for groups, members, and subgroups. Maybe a better explanation or variable name here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
What's attrs in find_groups_by_dn? Looks like you extracted and forgot to carry that over? |
I didn't try running this, but I'm guessing there's test coverage on the existing behavior? |
Subgroup Member Search strategy optimizations
Refactors the Recursive Member Search strategy to search for subgroups and then materialize members (without search).
This still performs a search for every member, but filters for group objects only. Once all of the groups have been identified (respecting the max
depth
option), we take the subgroups' members and materialize them intoNet::LDAP::Entry
objects (just wrapping thedn
).cc @jch