Skip to main content
Package com.gpudb

Class GPUdbBase.ClusterAddressInfo

java.lang.Object
com.gpudb.GPUdbBase.ClusterAddressInfo
Enclosing class:

public static class GPUdbBase.ClusterAddressInfo extends Object
Helper class which contains all possible address related information for a given Kinetica cluster. Used to keep track of the multiple Kinetica clusters’ addresses.
  • Constructor Details

    • ClusterAddressInfo

      protected ClusterAddressInfo(URL activeHeadNodeUrl, Map<String,String> systemProperties, List<URL> workerRankUrls, Set<String> hostNames, URL hostManagerUrl)
      Constructor for an active cluster
    • ClusterAddressInfo

      @Deprecated(since=“7.1.9”, forRemoval=true) protected ClusterAddressInfo(URL activeHeadNodeUrl, List<URL> workerRankUrls, Set<String> hostNames, URL hostManagerUrl, boolean isPrimaryCluster)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Constructor for an active cluster
    • ClusterAddressInfo

      @Deprecated(since=“7.1.9”, forRemoval=true) protected ClusterAddressInfo(URL activeHeadNodeUrl, List<URL> workerRankUrls, Set<String> hostNames, URL hostManagerUrl, boolean isPrimaryCluster, boolean isIntraClusterFailoverEnabled)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Constructor for intra-cluster failover-enabled systems
    • ClusterAddressInfo

      protected ClusterAddressInfo(URL activeHeadNodeUrl) throws GPUdbException
    • ClusterAddressInfo

      protected ClusterAddressInfo(URL activeHeadNodeUrl, int hostManagerPort) throws GPUdbException
  • Method Details

    • getActiveHeadNodeUrl

      public URL getActiveHeadNodeUrl()
    • getSystemProperties

      public Map<String,String> getSystemProperties()
    • getWorkerRankUrls

      public List<URL> getWorkerRankUrls()
      Gets the URLs of the cluster’s worker ranks, indexed such that entry i is rank i + 1; the head rank is not included.

      A rank that has been removed from the cluster keeps its slot in this list, as null. That slot is load-bearing: the worker indices produced by the server’s shard routing table are rank numbers, so dropping it would shift every rank above the removed one and silently misroute sharded records. Code that walks this list must skip null entries rather than dereference them.

      Returns:
      the worker rank URLs, with a null at the slot of every removed rank
    • getHostNames

      public Set<String> getHostNames()
    • getHostManagerUrl

      public URL getHostManagerUrl()
    • getIsPrimaryCluster

      @Deprecated(since=“7.2.2”, forRemoval=true) public boolean getIsPrimaryCluster()
      Deprecated, for removal: This API element is subject to removal in a future version.
    • isMultiHeadAvailable

      public boolean isMultiHeadAvailable()
      Whether multi-head operations are available on this cluster from this client.

      Distinct from the disableAutoDiscovery option, which records what the user asked for and applies to the whole HA ring. This records what was actually observed for one cluster: a cluster whose worker addresses this client cannot reach is usable through its head node, and that loss of capability belongs to the cluster, not to the connection.

      Returns:
      whether multi-head is available on this cluster
    • setMultiHeadAvailable

      public GPUdbBase.ClusterAddressInfo setMultiHeadAvailable(boolean value)
    • getIsIntraClusterFailoverEnabled

      @Deprecated(since=“7.1.9”, forRemoval=true) public static boolean getIsIntraClusterFailoverEnabled()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Get whether intra-cluster failover is enabled
    • isPrimaryCluster

      public boolean isPrimaryCluster()
      Another getter for the primary cluster boolean flag for convenience.
    • getHaStatus

      public String getHaStatus()
      Get the HA status (drained value) for this cluster.
      Returns:
      The HA status string (e.g., “drained”, “draining”, “not_drained”), or null if not set
    • isIntraClusterFailoverEnabled

      @Deprecated(since=“7.1.9”, forRemoval=true) public static boolean isIntraClusterFailoverEnabled()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Get whether intra-cluster failover is enabled
    • setActiveHeadNodeUrl

      public GPUdbBase.ClusterAddressInfo setActiveHeadNodeUrl(URL value)
      Set the active head node URL. Return this object to be able to chain operations.
    • setSystemProperties

      public GPUdbBase.ClusterAddressInfo setSystemProperties(Map<String,String> value)
      Set the system properties. Return this object to be able to chain operations.
    • setWorkerRankUrls

      public GPUdbBase.ClusterAddressInfo setWorkerRankUrls(List<URL> value)
      Set the worker rank URLs. Return this object to be able to chain operations.
    • setHostNames

      public GPUdbBase.ClusterAddressInfo setHostNames(Set<String> value)
      Set the list of host names for all available machines (whether active or passive). Return this object to be able to chain operations.
    • setHostManagerUrl

      public GPUdbBase.ClusterAddressInfo setHostManagerUrl(URL value)
      Set the host manager URL. Return this object to be able to chain operations.
    • setIsPrimaryCluster

      public GPUdbBase.ClusterAddressInfo setIsPrimaryCluster(boolean value)
      Set whether this cluster is the primary one. Return this object to be able to chain operations.
    • setHaStatus

      public GPUdbBase.ClusterAddressInfo setHaStatus(String value)
      Set the HA status (drained value) for this cluster. Return this object to be able to chain operations.
      Parameters:
      value - The HA status string (e.g., “drained”, “draining”, “not_drained”)
    • setIsIntraClusterFailoverEnabled

      @Deprecated(since=“7.1.9”, forRemoval=true) public GPUdbBase.ClusterAddressInfo setIsIntraClusterFailoverEnabled(boolean value)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Set whether this cluster has intra-cluster failover enabled. Return this object to be able to chain operations.
    • doesClusterContainNode

      public boolean doesClusterContainNode(String hostName)
      Checks if the given hostname (or IP address) is part of this cluster.
      Returns:
      true if this cluster contains a machine with the given hostname or IP address, false otherwise.
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object