Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-1404

Make hash id seed for a node's position in the hash wheel configurable

    XMLWordPrintable

Details

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

              rh-ee-galder Galder ZamarreƱo
              rh-ee-galder Galder ZamarreƱo
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: