URL:
https://github.com/SSSD/sssd/pull/812
Title: #812: Implement background refresh for IPA and AD domains and subdomains
jhrozek commented:
"""
The current PR is more-or-less finished, I think. It contains the initgroups refresh for
entries that had initgrExpireTimestamp at any time and decreases the code duplication in
the refresh modules. I generated some code with macros, which I also in general don't
like, but I think here it might be OK because the code would have been completely
cut-and-paste anyway.
I added the patches atop the existing ones. Maybe the code duplication reduction could
have been squashed before the patches that add the IPA and AD refreshes, but I didn't
want to destroy my history in case you didn't like this approach. Just let me know if
you would prefer to have the patches squashed.
There are some more potential improvements I can think about, but I also didn't want
to just implement them without having some second opinion:
- group refreshes don't take group nesting into account. It is possible that
refreshing parentgroup might also refresh childgroup. Maybe the refresh code could do
another cache search (as long as it's a BASE-scoped search, it would be quite cheap)
to check if a group should be refreshed or not.
- I still haven't implemented warning if the refresh takes longer than the cache
timeout. I can do it, though.
- One thing we discussed on the phone was the ability to specify only certain entry types
to be refreshed. It would be possible to add another domain struct member that would be a
flag and enable only those refreshes. But to be honest I forgot the reason why we talked
about this enhancement :-)
"""
See the full comment at
https://github.com/SSSD/sssd/pull/812#issuecomment-505825200