On Wed, Nov 13, 2013 at 03:59:20PM +0100, Willy Tarreau wrote:
> On Wed, Nov 13, 2013 at 09:41:31AM -0500, Bhaskar Maddala wrote:
> > > 2/4 :
> > >   - I really like your principle of keeping the default settings
> > compatible
> > >     with current implementations. That said, I still think that since 1.4
> > >     does not have the full avalanche with consistent hashing, we should
> > >     probably not enable it by default anymore. In fact, 1.4 is the only
> > >     stable version right now (and it's the same as the one you're using).
> > >     People who use 1.5-dev are used to be careful in their upgrades. So I
> > >     think that it would be better to remove the avalanche by default even
> > >     when doing a consistent hash. That way it will not change anything for
> > >     people migrating from 1.4 to 1.5. And the current 1.5-dev users will
> > be
> > >     able to get the same behaviour as today by explicitly adding
> > "avalanche"
> > >     on the hash-type line. It will also make the directive behave in a
> > much
> > >     more consistent way.
> > 
> > I have no concerns over this. I might have misunderstood one of our
> > conversations as implying that backward compatibility was a requirement.
> > If anything the code in cfgparse is a little more confusing to understand
> > when attempting to maintain backwards compatibility.
> 
> I think I have not been very clear in fact. My concern is about backwards
> compatibility between *stable* versions. Since 1.4 and 1.5-dev do not work
> the same way, I'd rather keep 1.4's behaviour as the standard one than 1.5's
> which is still in development and subject to change.

I just found that I was wrong on this point.

1.4 and 1.5 *do* apply a full avalanche hash after the first algorithm. In 1.4
it was named differently : chash_hash(). So I'll keep what you did in fact, so
that "hash-type consistent" defaults to using sdbm+avalanche.

Regards,
Willy


Reply via email to