URL:
https://github.com/SSSD/sssd/pull/947
Title: #947: tests: fix race conditions in integration tests
pbrezina commented:
"""
Thank you both for your time. I amended in-code comments and commit messages.
1) About files provider.
You are right that the sleep is suppose to eliminated race condition between touching the
files and triggering inotify callback so it has to stay. There is nothing we can do about
it. There are ways to workaround it of course (e.g. signalling domain state) but those
does not have real use case so there is no point doing that.
`poll_canary` has no meaning as we currently block when refreshing the cache. We can
either remove it or report a bug against sssd that it behaves incorrectly. @jhrozek When
files provider is updating cache in inotify callback (i.e. domain is inconsistent) should
nss responder A) return not found and let client look in files database, or B) block until
the cache is updated? Currently B is true but tests says A should be done.
In fact if SSSD uses A, I have some suggestions for [aforementioned
bugzilla](https://bugzilla.redhat.com/show_bug.cgi?id=1693379).
2) About enumeration tests
I kept mentioning Nyquist in commit message because in my opinion it is related and it is
why I used twice the value, but I removed it from the code. So I hope we are both
satisfied this way.
I also removed the `/2` sleep as nobody sees its value and tests actually pass without it
successfully as well (locally for now, lets wait for PR CI result).
I would like to get these patches merged so the tests are all green again. And do any
further improvements in different PR if needed/requested.
"""
See the full comment at
https://github.com/SSSD/sssd/pull/947#issuecomment-559525377