Class ShardCoreKeyMap


  • public final class ShardCoreKeyMap
    extends Object
    A map between segment core cache keys and the shard that these segments belong to. This allows to get the shard that a segment belongs to or to get the entire set of live core cache keys for a given index. In order to work this class needs to be notified about new segments. It modifies the current mappings as segments that were not known before are added and prevents the structure from growing indefinitely by registering close listeners on these segments so that at any time it only tracks live segments. NOTE: This is heavy. Avoid using this class unless absolutely required.
    • Constructor Detail

      • ShardCoreKeyMap

        public ShardCoreKeyMap()
    • Method Detail

      • getShardId

        public ShardId getShardId​(Object coreKey)
        Return the ShardId that holds the given segment, or null if this segment is not tracked.
      • getCoreKeysForIndex

        public Set<Object> getCoreKeysForIndex​(String index)
        Get the set of core cache keys associated with the given index.
      • size

        public int size()
        Return the number of tracked segments.