Not specific to ClusterJ but for primary key lookups, the NDB API client library hashes
the primary key (or a sub-component of the PK if you tell it to) to see what partition
the data is in - it then sends the operation to the primary data node for that partition.
Clusterj uses the NDB API and so I'd expect the behaviour to be consistent.
More on making your app/schema "distribution aware" can be found at
> -----Original Message-----
> From: Wasif Riaz Malik [mailto:wmalik@stripped]
> Sent: 18 June 2012 14:10
> To: cluster@stripped
> Subject: ClusterJ distribution awareness
> I am using ClusterJ 7.1.15a to query a cluster of ten nodes. I have
> noticed that the transactions are sent only to three nodes (even though
> the data is evenly spread out on all ten nodes).
> How does clusterj decide the transaction coordinator be default (if no
> hints are given)? Is it possible to distribute the transactions in a
> round robin fashion (without passing hints for each transaction)?
> Wasif Riaz Malik