[PATCH 1/2] FO: Don't retry the same server if it's not working This is a regression (luckily in master only) caused by my earlier patch to return the same server if it's already being resolved, which is the case in IPA provider where we need to kinit as part of id lookup.
I broke the case where we need to do a failover operation even between we returned the server to the backend, which is done if a server cannot be resolved and the be_fo_ layer queries failover for another.
[PATCH 2/2] FO: Return EAGAIN if there are more servers to try The failover uses ENOENT to indicate that there are no more available servers and the provider needs to go offline. However, when the resolver returned ENOENT after failing to resolve a host name, we would just pass ENOENT up as-is. The net effect was that if a server could not be resolved, the whole provider went offline.
On 08/14/2012 04:06 PM, Jakub Hrozek wrote:
[PATCH 1/2] FO: Don't retry the same server if it's not working This is a regression (luckily in master only) caused by my earlier patch to return the same server if it's already being resolved, which is the case in IPA provider where we need to kinit as part of id lookup.
I broke the case where we need to do a failover operation even between we returned the server to the backend, which is done if a server cannot be resolved and the be_fo_ layer queries failover for another.
[PATCH 2/2] FO: Return EAGAIN if there are more servers to try The failover uses ENOENT to indicate that there are no more available servers and the provider needs to go offline. However, when the resolver returned ENOENT after failing to resolve a host name, we would just pass ENOENT up as-is. The net effect was that if a server could not be resolved, the whole provider went offline.
Ack.
On Wed, Aug 15, 2012 at 09:50:23AM +0200, Pavel Březina wrote:
On 08/14/2012 04:06 PM, Jakub Hrozek wrote:
[PATCH 1/2] FO: Don't retry the same server if it's not working This is a regression (luckily in master only) caused by my earlier patch to return the same server if it's already being resolved, which is the case in IPA provider where we need to kinit as part of id lookup.
I broke the case where we need to do a failover operation even between we returned the server to the backend, which is done if a server cannot be resolved and the be_fo_ layer queries failover for another.
[PATCH 2/2] FO: Return EAGAIN if there are more servers to try The failover uses ENOENT to indicate that there are no more available servers and the provider needs to go offline. However, when the resolver returned ENOENT after failing to resolve a host name, we would just pass ENOENT up as-is. The net effect was that if a server could not be resolved, the whole provider went offline.
Ack.
Pushed to master.
sssd-devel@lists.fedorahosted.org