On 07/28/2014 04:23 PM, Simo Sorce wrote:
On Mon, 2014-07-28 at 13:16 +0200, Pavel Březina wrote:
> If previous SRV lookup failed and the SRV lookup status is not yet
> reseted to neutral we end up with unresolved meta server with neutral
> port status. This caused the failover to stick with the meta server
> instead of cycling through all configured servers.
Please rephrase because I am not sure I understand what you are trying
to say in this commit message, this is what I understood (and propose as
the commit message to set):
If a previous SRV lookup failed and the status is not already set to
neutral, then the meta server port status end up being neutral. This
causes the failover code to keep trying with the same meta server
instead of cycling through all configured servers.
Simo.
I don't think you rephrasing is correct. What I'm trying to say is:
There are two meta server status:
- port status (A)
- srv lookup status (B)
1. srv lookup fails, setting B to "resolve error" and A to "not
working", sssd goes offline
2. sssd tries to go back online, setting A to "neutral"
3. it tries to resolve meta server, but B is "resolve error" since we
haven't reached the timeout to set B to "neutral" as well
4. resolving meta server fails, but we don't continue with the next server
I believe my explanation is correct but it maybe needs more words for
those who did not dig in the code. Should I use more verbose explanation
similar to the one above?