[infinispan-dev] default value for virtualNodes

Dan Berindei dan.berindei at gmail.com
Fri Jan 27 07:48:02 EST 2012


On Fri, Jan 27, 2012 at 2:35 PM, Mircea Markus <mircea.markus at jboss.com> wrote:
> I've created a JIRA to track this: https://issues.jboss.org/browse/ISPN-1801
>
> I understand everybody has to have the exact same number of vnodes for
>
> reads and writes to hit the correct node, right ?
>
> Yes.
>
> That's true, but it is not a good thing: numVirtNodes should be proportional
> with the node's capacity, i.e. more powerful machines in the cluster should
> have assigned more virtual nodes.
> This way we can better control the load. A node would need to send its
> configured numVirtualNodes when joining in order to support this, but that's
> a thing we already do for  TACH.
>

We should use a different mechanism than the TopologyAwareUUID we use
for TACH, because the address is sent with every command. The capacity
instead should be fairly static. We may want to make it changeable at
runtime, but it will take a state transfer to propagate that info to
all the members of the cluster (because the nodes' CHs need to stay in
sync).

In fact, I can imagine users wanting to balance key ownership between
machines/racks/sites with TACH, but without actually using RELAY - the
TopologyAwareUUID is just an overhead for them.

Cheers
Dan



More information about the infinispan-dev mailing list