-
Enhancement
-
Resolution: Done
-
Major
-
None
-
None
In distributed caches, make hash seeds configurable. Right now, this is configured to be:
- WO/ virtual nodes -> org.infinispan.remoting.transport.jgroups.JGroupsAddress
- W/ virtual nodes -> org.infinispan.distribution.ch.VirtualAddress
To avoid needing Hot Rod servers needing to keep hash ids in the server side memory, it'd be helpful to have this configurable so that both the server and client can hash on the same seed to find a node's position in the hash wheel. For example, a HotRod server would provide an implementation where the source would be:
- WO/ virtual nodes -> String UTF-8 byte[] based on: '<node_host>:<node_port>'
- W/ virtual nodes -> String UTF-8 byte[] based on: '<node_host>:<node_port>:<virtual_node_index>'
This would be doable with some kind of SPI class that's configurable. By default, Infinispan would use a class that uses the Java classes and Hot Rod would plug a different implementation that returns the byte[] in the format spelled.
- blocks
-
ISPN-1408 Reduce Hot Rod topology information memory consumption
- Closed