Java 类org.apache.hadoop.hbase.replication.ReplicationQueuesClient 实例源码

项目:ditb    文件:TestLogsCleaner.java   
@Test(timeout=5000)
public void testZnodeCversionChange() throws Exception {
  Configuration conf = TEST_UTIL.getConfiguration();
  ReplicationLogCleaner cleaner = new ReplicationLogCleaner();
  cleaner.setConf(conf);

  ReplicationQueuesClient rqcMock = Mockito.mock(ReplicationQueuesClient.class);
  Mockito.when(rqcMock.getQueuesZNodeCversion()).thenReturn(1, 2, 3, 4);

  Field rqc = ReplicationLogCleaner.class.getDeclaredField("replicationQueues");
  rqc.setAccessible(true);

  rqc.set(cleaner, rqcMock);

  // This should return eventually when cversion stabilizes
  cleaner.getDeletableFiles(new LinkedList<FileStatus>());
}
项目:ditb    文件:TestReplicationSourceManager.java   
@Test
public void testFailoverDeadServerCversionChange() throws Exception {
  LOG.debug("testFailoverDeadServerCversionChange");

  conf.setBoolean(HConstants.ZOOKEEPER_USEMULTI, true);
  final Server s0 = new DummyServer("cversion-change0.example.org");
  ReplicationQueues repQueues =
      ReplicationFactory.getReplicationQueues(s0.getZooKeeper(), conf, s0);
  repQueues.init(s0.getServerName().toString());
  // populate some znodes in the peer znode
  files.add("log1");
  files.add("log2");
  for (String file : files) {
    repQueues.addLog("1", file);
  }
  // simulate queue transfer
  Server s1 = new DummyServer("cversion-change1.example.org");
  ReplicationQueues rq1 =
      ReplicationFactory.getReplicationQueues(s1.getZooKeeper(), s1.getConfiguration(), s1);
  rq1.init(s1.getServerName().toString());

  ReplicationQueuesClient client =
      ReplicationFactory.getReplicationQueuesClient(s1.getZooKeeper(), s1.getConfiguration(), s1);

  int v0 = client.getQueuesZNodeCversion();
  rq1.claimQueues(s0.getServerName().getServerName());
  int v1 = client.getQueuesZNodeCversion();
  // cversion should increased by 1 since a child node is deleted
  assertEquals(v0 + 1, v1);

  s0.abort("", null);
}