URL: https://github.com/SSSD/sssd/pull/5937 Author: alexey-tikhonov Title: #5937: [WIP] Another attempt to resolve #5134 Action: opened
PR body: """ There are two ideas: - get rid of re-alloc for every new member added: instead reserve space with a margin and shrink later. - don't add every new member to the list immediately: instead keep new members in a temporarily hash table. This will allow to avoid cross strcmp() at least among new members - hopefully, hash table should be much faster.
2nd patch actually makes 1st patch obsolete, but I will keep it a while to measure impact.
This is "WIP" as I didn't conduct perf measurements yet.
"""
To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/5937/head:pr5937 git checkout pr5937
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
Label: +Bugzilla
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
alexey-tikhonov commented: """ RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1893192 """
See the full comment at https://github.com/SSSD/sssd/pull/5937#issuecomment-1002782096
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
alexey-tikhonov commented: """ I did actual testing and conclusions are: - I correctly identified the bottleneck: https://github.com/SSSD/sssd/blob/4897c28741112b547a69feb7c887764c64cc9540/s... - my patch(-es) doesn't resolve the issue because by the moment `Received 49999 dereference results` `members->num_values` is already 49999 (i.e. all those members are already known) """
See the full comment at https://github.com/SSSD/sssd/pull/5937#issuecomment-1006932032
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
alexey-tikhonov commented: """ I did actual testing and conclusions are: - I correctly identified the bottleneck: https://github.com/SSSD/sssd/blob/4897c28741112b547a69feb7c887764c64cc9540/s... - my patch(-es) doesn't resolve the issue because (in certain configs) by the moment `Received 49999 dereference results` `members->num_values` is already 49999 (i.e. all those members are already known) """
See the full comment at https://github.com/SSSD/sssd/pull/5937#issuecomment-1006932032
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
alexey-tikhonov commented: """ I did actual testing and conclusions are: - I correctly identified the bottleneck: https://github.com/SSSD/sssd/blob/4897c28741112b547a69feb7c887764c64cc9540/s... - my patch(-es) doesn't resolve the issue because (in certain (or most?) configs) by the moment `Received 49999 dereference results` `members->num_values` is already 49999 (i.e. all those members are already known) """
See the full comment at https://github.com/SSSD/sssd/pull/5937#issuecomment-1006932032
URL: https://github.com/SSSD/sssd/pull/5937 Title: #5937: [WIP] Another attempt to resolve #5134
alexey-tikhonov commented: """ Pavel mentioned that possible reason for the check might be https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ldap/sear... """
See the full comment at https://github.com/SSSD/sssd/pull/5937#issuecomment-1012077810
sssd-devel@lists.fedorahosted.org