Class QuorumPeerConfig

    • Field Detail

      • nextDynamicConfigFileSuffix

        public static final java.lang.String nextDynamicConfigFileSuffix
        See Also:
        Constant Field Values
      • clientPortAddress

        protected java.net.InetSocketAddress clientPortAddress
      • secureClientPortAddress

        protected java.net.InetSocketAddress secureClientPortAddress
      • sslQuorum

        protected boolean sslQuorum
      • shouldUsePortUnification

        protected boolean shouldUsePortUnification
      • observerMasterPort

        protected int observerMasterPort
      • sslQuorumReloadCertFiles

        protected boolean sslQuorumReloadCertFiles
      • dataDir

        protected java.io.File dataDir
      • dataLogDir

        protected java.io.File dataLogDir
      • dynamicConfigFileStr

        protected java.lang.String dynamicConfigFileStr
      • configFileStr

        protected java.lang.String configFileStr
      • tickTime

        protected int tickTime
      • maxClientCnxns

        protected int maxClientCnxns
      • minSessionTimeout

        protected int minSessionTimeout
        defaults to -1 if not set explicitly
      • maxSessionTimeout

        protected int maxSessionTimeout
        defaults to -1 if not set explicitly
      • metricsProviderClassName

        protected java.lang.String metricsProviderClassName
      • metricsProviderConfiguration

        protected java.util.Properties metricsProviderConfiguration
      • localSessionsEnabled

        protected boolean localSessionsEnabled
      • localSessionsUpgradingEnabled

        protected boolean localSessionsUpgradingEnabled
      • clientPortListenBacklog

        protected int clientPortListenBacklog
        defaults to -1 if not set explicitly
      • initLimit

        protected int initLimit
      • syncLimit

        protected int syncLimit
      • connectToLearnerMasterLimit

        protected int connectToLearnerMasterLimit
      • electionAlg

        protected int electionAlg
      • electionPort

        protected int electionPort
      • quorumListenOnAllIPs

        protected boolean quorumListenOnAllIPs
      • serverId

        protected long serverId
      • lastSeenQuorumVerifier

        protected QuorumVerifier lastSeenQuorumVerifier
      • snapRetainCount

        protected int snapRetainCount
      • purgeInterval

        protected int purgeInterval
      • syncEnabled

        protected boolean syncEnabled
      • initialConfig

        protected java.lang.String initialConfig
      • quorumServerRequireSasl

        protected boolean quorumServerRequireSasl
        Configurations for the quorumpeer-to-quorumpeer sasl authentication
      • quorumLearnerRequireSasl

        protected boolean quorumLearnerRequireSasl
      • quorumEnableSasl

        protected boolean quorumEnableSasl
      • quorumServicePrincipal

        protected java.lang.String quorumServicePrincipal
      • quorumLearnerLoginContext

        protected java.lang.String quorumLearnerLoginContext
      • quorumServerLoginContext

        protected java.lang.String quorumServerLoginContext
      • quorumCnxnThreadsSize

        protected int quorumCnxnThreadsSize
      • oraclePath

        protected java.lang.String oraclePath
      • jvmPauseMonitorToRun

        protected boolean jvmPauseMonitorToRun
        JVM Pause Monitor feature switch
      • jvmPauseWarnThresholdMs

        protected long jvmPauseWarnThresholdMs
        JVM Pause Monitor warn threshold in ms
      • jvmPauseInfoThresholdMs

        protected long jvmPauseInfoThresholdMs
        JVM Pause Monitor info threshold in ms
      • jvmPauseSleepTimeMs

        protected long jvmPauseSleepTimeMs
        JVM Pause Monitor sleep time in ms
    • Constructor Detail

      • QuorumPeerConfig

        public QuorumPeerConfig()
    • Method Detail

      • getVersionFromFilename

        public static java.lang.String getVersionFromFilename​(java.lang.String filename)
      • writeDynamicConfig

        public static void writeDynamicConfig​(java.lang.String dynamicConfigFilename,
                                              QuorumVerifier qv,
                                              boolean needKeepVersion)
                                       throws java.io.IOException
        Writes dynamic configuration file
        Throws:
        java.io.IOException
      • editStaticConfig

        public static void editStaticConfig​(java.lang.String configFileStr,
                                            java.lang.String dynamicFileStr,
                                            boolean eraseClientPortAddress)
                                     throws java.io.IOException
        Edit static config file. If there are quorum information in static file, e.g. "server.X", "group", it will remove them. If it needs to erase client port information left by the old config, "eraseClientPortAddress" should be set true. It should also updates dynamic file pointer on reconfig.
        Throws:
        java.io.IOException
      • deleteFile

        public static void deleteFile​(java.lang.String filename)
      • parseDynamicConfig

        public static QuorumVerifier parseDynamicConfig​(java.util.Properties dynamicConfigProp,
                                                        int eAlg,
                                                        boolean warnings,
                                                        boolean configBackwardCompatibilityMode,
                                                        java.lang.String oraclePath)
                                                 throws java.io.IOException,
                                                        QuorumPeerConfig.ConfigException
        Parse dynamic configuration file and return quorumVerifier for new configuration.
        Parameters:
        dynamicConfigProp - Properties to parse from.
        Throws:
        java.io.IOException
        QuorumPeerConfig.ConfigException
      • getClientPortAddress

        public java.net.InetSocketAddress getClientPortAddress()
      • getSecureClientPortAddress

        public java.net.InetSocketAddress getSecureClientPortAddress()
      • getObserverMasterPort

        public int getObserverMasterPort()
      • getDataDir

        public java.io.File getDataDir()
      • getDataLogDir

        public java.io.File getDataLogDir()
      • getInitialConfig

        public java.lang.String getInitialConfig()
      • getTickTime

        public int getTickTime()
      • getMaxClientCnxns

        public int getMaxClientCnxns()
      • getMinSessionTimeout

        public int getMinSessionTimeout()
      • getMaxSessionTimeout

        public int getMaxSessionTimeout()
      • getMetricsProviderClassName

        public java.lang.String getMetricsProviderClassName()
      • getMetricsProviderConfiguration

        public java.util.Properties getMetricsProviderConfiguration()
      • areLocalSessionsEnabled

        public boolean areLocalSessionsEnabled()
      • isLocalSessionsUpgradingEnabled

        public boolean isLocalSessionsUpgradingEnabled()
      • isSslQuorum

        public boolean isSslQuorum()
      • shouldUsePortUnification

        public boolean shouldUsePortUnification()
      • getClientPortListenBacklog

        public int getClientPortListenBacklog()
      • getInitLimit

        public int getInitLimit()
      • getSyncLimit

        public int getSyncLimit()
      • getConnectToLearnerMasterLimit

        public int getConnectToLearnerMasterLimit()
      • getElectionAlg

        public int getElectionAlg()
      • getElectionPort

        public int getElectionPort()
      • getSnapRetainCount

        public int getSnapRetainCount()
      • getPurgeInterval

        public int getPurgeInterval()
      • getSyncEnabled

        public boolean getSyncEnabled()
      • getLastSeenQuorumVerifier

        public QuorumVerifier getLastSeenQuorumVerifier()
      • getJvmPauseInfoThresholdMs

        public long getJvmPauseInfoThresholdMs()
      • getJvmPauseWarnThresholdMs

        public long getJvmPauseWarnThresholdMs()
      • getJvmPauseSleepTimeMs

        public long getJvmPauseSleepTimeMs()
      • isJvmPauseMonitorToRun

        public boolean isJvmPauseMonitorToRun()
      • getServerId

        public long getServerId()
      • isDistributed

        public boolean isDistributed()
      • getConfigFilename

        public java.lang.String getConfigFilename()
      • getQuorumListenOnAllIPs

        public java.lang.Boolean getQuorumListenOnAllIPs()
      • isMultiAddressEnabled

        public boolean isMultiAddressEnabled()
      • isMultiAddressReachabilityCheckEnabled

        public boolean isMultiAddressReachabilityCheckEnabled()
      • getMultiAddressReachabilityCheckTimeoutMs

        public int getMultiAddressReachabilityCheckTimeoutMs()
      • isStandaloneEnabled

        public static boolean isStandaloneEnabled()
      • setStandaloneEnabled

        public static void setStandaloneEnabled​(boolean enabled)
      • isReconfigEnabled

        public static boolean isReconfigEnabled()
      • setReconfigEnabled

        public static void setReconfigEnabled​(boolean enabled)