Java 类org.apache.hadoop.hbase.HealthCheckChore 实例源码

项目:ditb    文件:HRegionServer.java   
/**
 * All initialization needed before we go register with Master.
 *
 * @throws IOException
 * @throws InterruptedException
 */
private void preRegistrationInitialization() {
  try {
    setupClusterConnection();

    // Health checker thread.
    if (isHealthCheckerConfigured()) {
      int sleepTime = this.conf
          .getInt(HConstants.HEALTH_CHORE_WAKE_FREQ, HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
      healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
    }
    this.pauseMonitor = new JvmPauseMonitor(conf);
    pauseMonitor.start();

    initializeZooKeeper();
    if (!isStopped() && !isAborted()) {
      initializeThreads();
    }
  } catch (Throwable t) {
    // Call stop if error or process will stick around for ever since server
    // puts up non-daemon threads.
    this.rpcServices.stop();
    abort("Initialization of RS failed.  Hence aborting RS.", t);
  }
}
项目:pbase    文件:HRegionServer.java   
/**
 * All initialization needed before we go register with Master.
 *
 * @throws IOException
 * @throws InterruptedException
 */
private void preRegistrationInitialization() {
    try {
        setupClusterConnection();//1.初始化HConnection 2.初始化MetaTableLocator

        // Health checker thread.
        if (isHealthCheckerConfigured()) {//健康检测线程
            int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
                    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
            healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
        }
        this.pauseMonitor = new JvmPauseMonitor(conf);//JVM 暂停检测
        pauseMonitor.start();

        initializeZooKeeper();//zookeeper相关的初始化
        if (!isStopped() && !isAborted()) {
            initializeThreads();
        }
    } catch (Throwable t) {
        // Call stop if error or process will stick around for ever since server
        // puts up non-daemon threads.
        this.rpcServices.stop();
        abort("Initialization of RS failed.  Hence aborting RS.", t);
    }
}
项目:LCIndex-HBase-0.94.16    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY + ".multiplier", 1000);
  this.compactionChecker =
      new CompactionChecker(this, this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime =
      this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
        HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases =
      new Leases((int) conf.getLong(HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
        HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD), this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:HIndex    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region has not gotten updates
  // in a while. It will take care of not checking too frequently on store-by-store basis.
  this.compactionChecker = new CompactionChecker(this, this.threadWakeFrequency, this);
  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);
  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases(this.threadWakeFrequency);

  // Create the thread to clean the moved regions list
  movedRegionsCleaner = MovedRegionsCleaner.createAndStart(this);

  if (this.nonceManager != null) {
    // Create the chore that cleans up nonces.
    nonceManagerChore = this.nonceManager.createCleanupChore(this);
  }

  // Setup RPC client for master communication
  rpcClient = new RpcClient(conf, clusterId, new InetSocketAddress(
      this.isa.getAddress(), 0));
  this.pauseMonitor = new JvmPauseMonitor(conf);
  pauseMonitor.start();
}
项目:IRIndex    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases((int) conf.getLong(
      HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
      HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD),
      this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:PyroDB    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region has not gotten updates
  // in a while. It will take care of not checking too frequently on store-by-store basis.
  this.compactionChecker = new CompactionChecker(this, this.threadWakeFrequency, this);
  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);
  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases(this.threadWakeFrequency);

  // Create the thread to clean the moved regions list
  movedRegionsCleaner = MovedRegionsCleaner.createAndStart(this);

  if (this.nonceManager != null) {
    // Create the chore that cleans up nonces.
    nonceManagerChore = this.nonceManager.createCleanupChore(this);
  }

  // Setup RPC client for master communication
  rpcClient = new RpcClient(conf, clusterId, new InetSocketAddress(
    rpcServices.isa.getAddress(), 0));
  this.pauseMonitor = new JvmPauseMonitor(conf);
  pauseMonitor.start();
}
项目:c5    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region has not gotten updates
  // in a while. It will take care of not checking too frequently on store-by-store basis.
  this.compactionChecker = new CompactionChecker(this, this.threadWakeFrequency, this);
  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);
  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases(this.threadWakeFrequency);

  // Create the thread to clean the moved regions list
  movedRegionsCleaner = MovedRegionsCleaner.createAndStart(this);

  // Setup RPC client for master communication
  rpcClient = new RpcClient(conf, clusterId, new InetSocketAddress(
      this.isa.getAddress(), 0));
  this.pauseMonitor = new JvmPauseMonitor(conf);
  pauseMonitor.start();
}
项目:HBase-Research    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases((int) conf.getLong(
      HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
      HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD),
      this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:hbase-0.94.8-qod    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases((int) conf.getLong(
      HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
      HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD),
      this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:hbase-0.94.8-qod    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases((int) conf.getLong(
      HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
      HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD),
      this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:DominoHBase    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);
  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases(this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }

  // Create the thread to clean the moved regions list
  movedRegionsCleaner = MovedRegionsCleaner.createAndStart(this);
}
项目:hindex    文件:HRegionServer.java   
private void initializeThreads() throws IOException {
  // Cache flushing thread.
  this.cacheFlusher = new MemStoreFlusher(conf, this);

  // Compaction thread
  this.compactSplitThread = new CompactSplitThread(this);

  // Background thread to check for compactions; needed if region
  // has not gotten updates in a while. Make it run at a lesser frequency.
  int multiplier = this.conf.getInt(HConstants.THREAD_WAKE_FREQUENCY +
    ".multiplier", 1000);
  this.compactionChecker = new CompactionChecker(this,
    this.threadWakeFrequency * multiplier, this);

  this.periodicFlusher = new PeriodicMemstoreFlusher(this.threadWakeFrequency, this);

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.leases = new Leases((int) conf.getLong(
      HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY,
      HConstants.DEFAULT_HBASE_REGIONSERVER_LEASE_PERIOD),
      this.threadWakeFrequency);

  // Create the thread for the ThriftServer.
  if (conf.getBoolean("hbase.regionserver.export.thrift", false)) {
    thriftServer = new HRegionThriftServer(this, conf);
    thriftServer.start();
    LOG.info("Started Thrift API from Region Server.");
  }
}
项目:HBase-Research    文件:HMaster.java   
/**
 * Initializes the HMaster. The steps are as follows:
 * <p>
 * <ol>
 * <li>Initialize HMaster RPC and address
 * <li>Connect to ZooKeeper.
 * </ol>
 * <p>
 * Remaining steps of initialization occur in {@link #run()} so that they
 * run in their own thread rather than within the context of the constructor.
 * @throws InterruptedException
 */
public HMaster(final Configuration conf)
throws IOException, KeeperException, InterruptedException {
  this.conf = new Configuration(conf);
  // Disable the block cache on the master
  this.conf.setFloat(HConstants.HFILE_BLOCK_CACHE_SIZE_KEY, 0.0f);
  // Set how many times to retry talking to another server over HConnection.
  HConnectionManager.setServerSideHConnectionRetries(this.conf, LOG);
  // Server to handle client requests.
  String hostname = conf.get("hbase.master.ipc.address",
    Strings.domainNamePointerToHostName(DNS.getDefaultHost(
      conf.get("hbase.master.dns.interface", "default"),
      conf.get("hbase.master.dns.nameserver", "default"))));
  int port = conf.getInt(HConstants.MASTER_PORT, HConstants.DEFAULT_MASTER_PORT);
  // Test that the hostname is reachable
  InetSocketAddress initialIsa = new InetSocketAddress(hostname, port);
  if (initialIsa.getAddress() == null) {
    throw new IllegalArgumentException("Failed resolve of hostname " + initialIsa);
  }
  int numHandlers = conf.getInt("hbase.master.handler.count",
    conf.getInt("hbase.regionserver.handler.count", 25));
  this.rpcServer = HBaseRPC.getServer(this,
    new Class<?>[]{HMasterInterface.class, HMasterRegionInterface.class},
      initialIsa.getHostName(), // This is bindAddress if set else it's hostname
      initialIsa.getPort(),
      numHandlers,
      0, // we dont use high priority handlers in master
      conf.getBoolean("hbase.rpc.verbose", false), conf,
      0); // this is a DNC w/o high priority handlers
  // Set our address.
  this.isa = this.rpcServer.getListenerAddress();
  this.serverName = new ServerName(this.isa.getHostName(),
    this.isa.getPort(), System.currentTimeMillis());
  this.rsFatals = new MemoryBoundedLogMessageBuffer(
      conf.getLong("hbase.master.buffer.for.rs.fatals", 1*1024*1024));

  // login the zookeeper client principal (if using security)
  ZKUtil.loginClient(this.conf, "hbase.zookeeper.client.keytab.file",
    "hbase.zookeeper.client.kerberos.principal", this.isa.getHostName());

  // initialize server principal (if using secure Hadoop)
  User.login(conf, "hbase.master.keytab.file",
    "hbase.master.kerberos.principal", this.isa.getHostName());

  // set the thread name now we have an address
  setName(MASTER + "-" + this.serverName.toString());

  Replication.decorateMasterConfiguration(this.conf);

  // Hack! Maps DFSClient => Master for logs.  HDFS made this
  // config param for task trackers, but we can piggyback off of it.
  if (this.conf.get("mapred.task.id") == null) {
    this.conf.set("mapred.task.id", "hb_m_" + this.serverName.toString());
  }

  this.zooKeeper = new ZooKeeperWatcher(conf, MASTER + ":" + isa.getPort(), this, true);
  this.rpcServer.startThreads();
  this.metrics = new MasterMetrics(getServerName().toString());

  // Health checker thread.
  int sleepTime = this.conf.getInt(HConstants.HEALTH_CHORE_WAKE_FREQ,
    HConstants.DEFAULT_THREAD_WAKE_FREQUENCY);
  if (isHealthCheckerConfigured()) {
    healthCheckChore = new HealthCheckChore(sleepTime, this, getConfiguration());
  }

  this.shouldSplitMetaSeparately = conf.getBoolean(HLog.SEPARATE_HLOG_FOR_META, false);
  waitingOnLogSplitting = this.conf.getBoolean("hbase.master.wait.for.log.splitting", false);
}