couchbase/spymemcached — pull request #5 by rgorodischer (2014-07-12 19:39:29+00:00)
Title: Fixed bug in max reconnection delay initialization.

This change fixes the following bug in max reconnect delay initialization:

The 'maxDelay' parameter is used to be set in seconds (but if it was specified in milliseconds, the things would be even worser). Currently, it's transformed during initialization with TimeUnit.SECONDS.toMillis.
It means that the specified value is multiplied by 1000 in constructor.
And then it appears in this code snippet from method 'queueReconnect':

long delay = (long) Math.min(maxDelay, Math.pow(2,
node.getReconnectCount())) * 1000;
long reconnectTime = System.currentTimeMillis() + delay;

As you can see, it's multiplied by 1000 second time here, what is obviously causes 1000 times longer delay then the user expects.