Search in sources :

Example 1 with RetryConfig

use of org.apache.hadoop.hbase.util.RetryCounter.RetryConfig in project hbase by apache.

the class ProcedureUtil method createRetryCounter.

/**
 * Get a retry counter for getting the backoff time. We will use the
 * {@link ExponentialBackoffPolicyWithLimit} policy, and the base unit is 1 second, max sleep time
 * is 10 minutes by default.
 * <p/>
 * For UTs, you can set the {@link #PROCEDURE_RETRY_SLEEP_INTERVAL_MS} and
 * {@link #PROCEDURE_RETRY_MAX_SLEEP_TIME_MS} to make more frequent retry so your UT will not
 * timeout.
 */
public static RetryCounter createRetryCounter(Configuration conf) {
    long sleepIntervalMs = conf.getLong(PROCEDURE_RETRY_SLEEP_INTERVAL_MS, DEFAULT_PROCEDURE_RETRY_SLEEP_INTERVAL_MS);
    long maxSleepTimeMs = conf.getLong(PROCEDURE_RETRY_MAX_SLEEP_TIME_MS, DEFAULT_PROCEDURE_RETRY_MAX_SLEEP_TIME_MS);
    RetryConfig retryConfig = new RetryConfig().setSleepInterval(sleepIntervalMs).setMaxSleepTime(maxSleepTimeMs).setBackoffPolicy(new ExponentialBackoffPolicyWithLimit());
    return new RetryCounter(retryConfig);
}
Also used : ExponentialBackoffPolicyWithLimit(org.apache.hadoop.hbase.util.RetryCounter.ExponentialBackoffPolicyWithLimit) RetryConfig(org.apache.hadoop.hbase.util.RetryCounter.RetryConfig) RetryCounter(org.apache.hadoop.hbase.util.RetryCounter)

Example 2 with RetryConfig

use of org.apache.hadoop.hbase.util.RetryCounter.RetryConfig in project hbase by apache.

the class HBaseClusterManager method setConf.

@Override
public void setConf(Configuration conf) {
    super.setConf(conf);
    if (conf == null) {
        // Configured gets passed null before real conf. Why? I don't know.
        return;
    }
    sshUserName = conf.get("hbase.it.clustermanager.ssh.user", "");
    String extraSshOptions = conf.get("hbase.it.clustermanager.ssh.opts", "");
    sshOptions = System.getenv("HBASE_SSH_OPTS");
    if (!extraSshOptions.isEmpty()) {
        sshOptions = StringUtils.join(new Object[] { sshOptions, extraSshOptions }, " ");
    }
    sshOptions = (sshOptions == null) ? "" : sshOptions;
    sshUserName = (sshUserName == null) ? "" : sshUserName;
    tunnelCmd = conf.get("hbase.it.clustermanager.ssh.cmd", DEFAULT_TUNNEL_CMD);
    tunnelSudoCmd = conf.get("hbase.it.clustermanager.ssh.sudo.cmd", DEFAULT_TUNNEL_SUDO_CMD);
    // Print out ssh special config if any.
    if ((sshUserName != null && sshUserName.length() > 0) || (sshOptions != null && sshOptions.length() > 0)) {
        LOG.info("Running with SSH user [" + sshUserName + "] and options [" + sshOptions + "]");
    }
    this.retryCounterFactory = new RetryCounterFactory(new RetryConfig().setMaxAttempts(conf.getInt(RETRY_ATTEMPTS_KEY, DEFAULT_RETRY_ATTEMPTS)).setSleepInterval(conf.getLong(RETRY_SLEEP_INTERVAL_KEY, DEFAULT_RETRY_SLEEP_INTERVAL)));
}
Also used : RetryCounterFactory(org.apache.hadoop.hbase.util.RetryCounterFactory) RetryConfig(org.apache.hadoop.hbase.util.RetryCounter.RetryConfig)

Example 3 with RetryConfig

use of org.apache.hadoop.hbase.util.RetryCounter.RetryConfig in project hbase by apache.

the class RESTApiClusterManager method setConf.

@Override
public void setConf(Configuration conf) {
    super.setConf(conf);
    if (conf == null) {
        // `Configured()` constructor calls `setConf(null)` before calling again with a real value.
        return;
    }
    final Class<? extends ClusterManager> clazz = conf.getClass(REST_API_DELEGATE_CLUSTER_MANAGER, HBaseClusterManager.class, ClusterManager.class);
    hBaseClusterManager = ReflectionUtils.newInstance(clazz, conf);
    serverHostname = conf.get(REST_API_CLUSTER_MANAGER_HOSTNAME, DEFAULT_SERVER_HOSTNAME);
    clusterName = conf.get(REST_API_CLUSTER_MANAGER_CLUSTER_NAME, DEFAULT_CLUSTER_NAME);
    // Add filter to Client instance to enable server authentication.
    String serverUsername = conf.get(REST_API_CLUSTER_MANAGER_USERNAME, DEFAULT_SERVER_USERNAME);
    String serverPassword = conf.get(REST_API_CLUSTER_MANAGER_PASSWORD, DEFAULT_SERVER_PASSWORD);
    client.register(HttpAuthenticationFeature.basic(serverUsername, serverPassword));
    this.retryCounterFactory = new RetryCounterFactory(new RetryConfig().setMaxAttempts(conf.getInt(RETRY_ATTEMPTS_KEY, DEFAULT_RETRY_ATTEMPTS)).setSleepInterval(conf.getLong(RETRY_SLEEP_INTERVAL_KEY, DEFAULT_RETRY_SLEEP_INTERVAL)));
}
Also used : RetryCounterFactory(org.apache.hadoop.hbase.util.RetryCounterFactory) RetryConfig(org.apache.hadoop.hbase.util.RetryCounter.RetryConfig)

Aggregations

RetryConfig (org.apache.hadoop.hbase.util.RetryCounter.RetryConfig)3 RetryCounterFactory (org.apache.hadoop.hbase.util.RetryCounterFactory)2 RetryCounter (org.apache.hadoop.hbase.util.RetryCounter)1 ExponentialBackoffPolicyWithLimit (org.apache.hadoop.hbase.util.RetryCounter.ExponentialBackoffPolicyWithLimit)1