当前位置: 首页>>代码示例>>Java>>正文


Java ZKSplitLogManagerCoordination类代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination的典型用法代码示例。如果您正苦于以下问题:Java ZKSplitLogManagerCoordination类的具体用法?Java ZKSplitLogManagerCoordination怎么用?Java ZKSplitLogManagerCoordination使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ZKSplitLogManagerCoordination类属于org.apache.hadoop.hbase.coordination包,在下文中一共展示了ZKSplitLogManagerCoordination类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testTaskErr

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
@Test (timeout=180000)
public void testTaskErr() throws Exception {
  LOG.info("TestTaskErr - cleanup task node once in ERR state");

  conf.setInt("hbase.splitlog.max.resubmit", 0);
  slm = new SplitLogManager(ds, conf, stopper, master, DUMMY_MASTER);
  TaskBatch batch = new TaskBatch();

  String tasknode = submitTaskAndWait(batch, "foo/1");
  final ServerName worker1 = ServerName.valueOf("worker1,1,1");
  SplitLogTask slt = new SplitLogTask.Err(worker1, this.mode);
  ZKUtil.setData(zkw, tasknode, slt.toByteArray());

  synchronized (batch) {
    while (batch.installed != batch.error) {
      batch.wait();
    }
  }
  waitForCounter(tot_mgr_task_deleted, 0, 1, to/2);
  assertTrue(ZKUtil.checkExists(zkw, tasknode) == -1);
  conf.setInt("hbase.splitlog.max.resubmit", ZKSplitLogManagerCoordination.DEFAULT_MAX_RESUBMIT);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:23,代码来源:TestSplitLogManager.java

示例2: testTaskErr

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
@Test (timeout=180000)
public void testTaskErr() throws Exception {
  LOG.info("TestTaskErr - cleanup task node once in ERR state");

  conf.setInt("hbase.splitlog.max.resubmit", 0);
  slm = new SplitLogManager(master, conf);
  TaskBatch batch = new TaskBatch();

  String tasknode = submitTaskAndWait(batch, "foo/1");
  final ServerName worker1 = ServerName.valueOf("worker1,1,1");
  SplitLogTask slt = new SplitLogTask.Err(worker1);
  ZKUtil.setData(zkw, tasknode, slt.toByteArray());

  synchronized (batch) {
    while (batch.installed != batch.error) {
      batch.wait();
    }
  }
  waitForCounter(tot_mgr_task_deleted, 0, 1, to/2);
  assertTrue(ZKUtil.checkExists(zkw, tasknode) == -1);
  conf.setInt("hbase.splitlog.max.resubmit", ZKSplitLogManagerCoordination.DEFAULT_MAX_RESUBMIT);
}
 
开发者ID:apache,项目名称:hbase,代码行数:23,代码来源:TestSplitLogManager.java

示例3: LogReplayOutputSink

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
public LogReplayOutputSink(PipelineController controller, EntryBuffers entryBuffers,
    int numWriters) {
  super(controller, entryBuffers, numWriters);
  this.waitRegionOnlineTimeOut = conf.getInt(HConstants.HBASE_SPLITLOG_MANAGER_TIMEOUT,
      ZKSplitLogManagerCoordination.DEFAULT_TIMEOUT);
  this.logRecoveredEditsOutputSink = new LogRecoveredEditsOutputSink(controller,
    entryBuffers, numWriters);
  this.logRecoveredEditsOutputSink.setReporter(reporter);
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:10,代码来源:WALSplitter.java

示例4: LogReplayOutputSink

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
public LogReplayOutputSink(int numWriters) {
  super(numWriters);
  this.waitRegionOnlineTimeOut =
      conf.getInt(HConstants.HBASE_SPLITLOG_MANAGER_TIMEOUT,
        ZKSplitLogManagerCoordination.DEFAULT_TIMEOUT);
  this.logRecoveredEditsOutputSink = new LogRecoveredEditsOutputSink(numWriters);
  this.logRecoveredEditsOutputSink.setReporter(reporter);
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:9,代码来源:WALSplitter.java

示例5: testDelayedDeleteOnFailure

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
@Test(timeout=30000)
public void testDelayedDeleteOnFailure() throws Exception {
  LOG.info("testDelayedDeleteOnFailure");
  startCluster(1);
  final SplitLogManager slm = master.getMasterFileSystem().splitLogManager;
  final FileSystem fs = master.getMasterFileSystem().getFileSystem();
  final Path logDir = new Path(FSUtils.getRootDir(conf), "x");
  fs.mkdirs(logDir);
  ExecutorService executor = null;
  try {
    final Path corruptedLogFile = new Path(logDir, "x");
    FSDataOutputStream out;
    out = fs.create(corruptedLogFile);
    out.write(0);
    out.write(Bytes.toBytes("corrupted bytes"));
    out.close();
    ZKSplitLogManagerCoordination coordination =
        (ZKSplitLogManagerCoordination) ((BaseCoordinatedStateManager) master
            .getCoordinatedStateManager()).getSplitLogManagerCoordination();
    coordination.setIgnoreDeleteForTesting(true);
    executor = Executors.newSingleThreadExecutor();
    Runnable runnable = new Runnable() {
     @Override
     public void run() {
        try {
          // since the logDir is a fake, corrupted one, so the split log worker
          // will finish it quickly with error, and this call will fail and throw
          // an IOException.
          slm.splitLogDistributed(logDir);
        } catch (IOException ioe) {
          try {
            assertTrue(fs.exists(corruptedLogFile));
            // this call will block waiting for the task to be removed from the
            // tasks map which is not going to happen since ignoreZKDeleteForTesting
            // is set to true, until it is interrupted.
            slm.splitLogDistributed(logDir);
          } catch (IOException e) {
            assertTrue(Thread.currentThread().isInterrupted());
            return;
          }
          fail("did not get the expected IOException from the 2nd call");
        }
        fail("did not get the expected IOException from the 1st call");
      }
    };
    Future<?> result = executor.submit(runnable);
    try {
      result.get(2000, TimeUnit.MILLISECONDS);
    } catch (TimeoutException te) {
      // it is ok, expected.
    }
    waitForCounter(tot_mgr_wait_for_zk_delete, 0, 1, 10000);
    executor.shutdownNow();
    executor = null;

    // make sure the runnable is finished with no exception thrown.
    result.get();
  } finally {
    if (executor != null) {
      // interrupt the thread in case the test fails in the middle.
      // it has no effect if the thread is already terminated.
      executor.shutdownNow();
    }
    fs.delete(logDir, true);
  }
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:67,代码来源:TestDistributedLogSplitting.java

示例6: testDelayedDeleteOnFailure

import org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination; //导入依赖的package包/类
@Test(timeout = 30000)
public void testDelayedDeleteOnFailure() throws Exception {
  LOG.info("testDelayedDeleteOnFailure");
  startCluster(1);
  final SplitLogManager slm = master.getMasterWalManager().getSplitLogManager();
  final FileSystem fs = master.getMasterFileSystem().getFileSystem();
  final Path logDir = new Path(new Path(FSUtils.getRootDir(conf), HConstants.HREGION_LOGDIR_NAME),
      ServerName.valueOf("x", 1, 1).toString());
  fs.mkdirs(logDir);
  ExecutorService executor = null;
  try {
    final Path corruptedLogFile = new Path(logDir, "x");
    FSDataOutputStream out;
    out = fs.create(corruptedLogFile);
    out.write(0);
    out.write(Bytes.toBytes("corrupted bytes"));
    out.close();
    ZKSplitLogManagerCoordination coordination =
        (ZKSplitLogManagerCoordination) (master.getCoordinatedStateManager())
            .getSplitLogManagerCoordination();
    coordination.setIgnoreDeleteForTesting(true);
    executor = Executors.newSingleThreadExecutor();
    Runnable runnable = new Runnable() {
      @Override
      public void run() {
        try {
          // since the logDir is a fake, corrupted one, so the split log worker
          // will finish it quickly with error, and this call will fail and throw
          // an IOException.
          slm.splitLogDistributed(logDir);
        } catch (IOException ioe) {
          try {
            assertTrue(fs.exists(corruptedLogFile));
            // this call will block waiting for the task to be removed from the
            // tasks map which is not going to happen since ignoreZKDeleteForTesting
            // is set to true, until it is interrupted.
            slm.splitLogDistributed(logDir);
          } catch (IOException e) {
            assertTrue(Thread.currentThread().isInterrupted());
            return;
          }
          fail("did not get the expected IOException from the 2nd call");
        }
        fail("did not get the expected IOException from the 1st call");
      }
    };
    Future<?> result = executor.submit(runnable);
    try {
      result.get(2000, TimeUnit.MILLISECONDS);
    } catch (TimeoutException te) {
      // it is ok, expected.
    }
    waitForCounter(tot_mgr_wait_for_zk_delete, 0, 1, 10000);
    executor.shutdownNow();
    executor = null;

    // make sure the runnable is finished with no exception thrown.
    result.get();
  } finally {
    if (executor != null) {
      // interrupt the thread in case the test fails in the middle.
      // it has no effect if the thread is already terminated.
      executor.shutdownNow();
    }
    fs.delete(logDir, true);
  }
}
 
开发者ID:apache,项目名称:hbase,代码行数:68,代码来源:AbstractTestDLS.java


注:本文中的org.apache.hadoop.hbase.coordination.ZKSplitLogManagerCoordination类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。