node-hashring icon indicating copy to clipboard operation
node-hashring copied to clipboard

Solve inconsistent hashing behavior

Open tcf909 opened this issue 9 years ago • 0 comments

In a dynamic cluster (adding and removing nodes), there is a chance when dividing we receive an infinite repeating result which floors to a value that would be less than it needs to be to maintain a consistent hash with a prior state (in which the dividing result is a full integer, or not repeating).

Using round here seems to resolve the issue.

Test case: create a cluster of 6, distribute keys, add a new pnode (total 7), redistribute keys, add a new pnode (total 8), redistribute keys and then run through all keys and check that they exist in the correct location (failure).

solves issue #43

tcf909 avatar Aug 12 '16 19:08 tcf909