Hi,

On Thu, Jun 23, 2016 at 02:42:18PM -0400, Selva Nair wrote:
> > So, now we have 4 different remotes.  You're scaling the exponent by 1/4
> > here, so the retry timer would be
> >
> >   5s 5s 5s 5s 10s 10s 10s 10s 20s 20s 20s 20s ...
> >
> > then (or, phrased differently, "one round uses the unscaled timer, the
> > next round across all remotes uses 2^1, the third round uses 2^2").
> >
> >
> > If I understood the math right, I think this would be useful behaviour ;-)
> > - fast failover if multiple remotes are there, exponentially slowing down
> > if all remotes have been tried.  Plus, fairly easy to implement as nearly
> > all needed values are already around.
> 
> 
> Yes, the book-keeping variables are already there.
> 
> To avoid aggressive slowing down, may be we could start the scaling after
> rc has reached a threshold. Say don't do anything until rc = 5 and then
> start scaling the timer until rc reaches 15.

I think that is a good addition to the original plan - a server might have
a hickup for other reasons than pull-reject (maybe just restarting due to
upgrades, whatever), and trying "a few times in quick sequence" before 
going into backoff should help in these cases.

Go for it :-)

gert

-- 
USENET is *not* the non-clickable part of WWW!
                                                           //www.muc.de/~gert/
Gert Doering - Munich, Germany                             g...@greenie.muc.de
fax: +49-89-35655025                        g...@net.informatik.tu-muenchen.de

Attachment: signature.asc
Description: PGP signature

Reply via email to