Hi Andy, the DNS is manipulated to point always to the working machine(machine in production). If we could do it only in the case where the list size = 1, that would be perfectly fine and the default case for real load balancing would still be like before. Cheers Andreas. On Wed, Jun 8, 2011 at 5:02 AM, Andrew Hanushevsky <[log in to unmask]>wrote: > Hi Andreas, > > I think the issue here is that the reason the list is not re-translated > every time because he client picks (in a random order) through the list when > it reconnects. If the DNS returns the list in random order itself (as most > do now) then the process may, at best, become ineffecient (i.e., failing > hosts being unnecessarily retried) and at worst, never converge. > > Most larger sites setup a DNS entry with multiple addresses so that they > can automatically fail-over this mode of operation. As I look at the code, > this process works only if the list of addresses is stable (at least until > all of them have been tried once). Hence, that's why the list is translated > only once. > > Three options exist: a) the easy one is to have an option (e.g. envar) > control the behaviour with old behaviour being the default, b) only > retranslated the list after all entries have been tried (I think this is > much harder), and c) retranslate only if the DNS call returned a single > entry (don't know if this is really what you are after but it's the safest). > > I still don't quite understand how retranslating the DNS will allow you to > be more fault tolerant unless the DNS knows to return an address that is > working when the one it has is not working. Hint? > > Andy > > > On Wed, 8 Jun 2011, Andreas-Joachim Peters wrote: > > Hi, >> I have the following request to change some basic behaviour of the xrootd >> client code. >> >> Currently when an XrdClient::Open was issued or XrdClientAdmin::Connect >> any >> DNS alias is only resolved once in the beginning and then stays forever as >> target in the loop which honours the settings for retry/reconnect etc. >> >> Andy ... are there any objections to change this behaviour and to resolve >> the alias again before each retry? I would need that behavour to have an >> active/passive failover via DNS alias configured. >> >> The code change is trivial (two lines inserted). >> >> Cheers Andreas. >> >>