gpt4 book ai didi

org.apache.accumulo.server.zookeeper.ZooLock类的使用及代码示例

转载 作者:知者 更新时间:2024-03-14 05:17:31 27 4
gpt4 key购买 nike

本文整理了Java中org.apache.accumulo.server.zookeeper.ZooLock类的一些代码示例,展示了ZooLock类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZooLock类的具体详情如下:
包路径:org.apache.accumulo.server.zookeeper.ZooLock
类名称:ZooLock

ZooLock介绍

暂无

代码示例

代码示例来源:origin: org.apache.accumulo/accumulo-master

private void getMasterLock(final String zMasterLoc) throws KeeperException, InterruptedException {
 log.info("trying to get master lock");
 final String masterClientAddress = hostname + ":"
   + getConfiguration().getPort(Property.MASTER_CLIENTPORT)[0];
 while (true) {
  MasterLockWatcher masterLockWatcher = new MasterLockWatcher();
  masterLock = new ZooLock(zMasterLoc);
  masterLock.lockAsync(masterLockWatcher, masterClientAddress.getBytes());
  masterLockWatcher.waitForChange();
  if (masterLockWatcher.acquiredLock) {
   break;
  }
  if (!masterLockWatcher.failedToAcquireLock) {
   throw new IllegalStateException("master lock in unknown state");
  }
  masterLock.tryToCancelAsyncLockOrUnlock();
  sleepUninterruptibly(TIME_TO_WAIT_BETWEEN_LOCK_CHECKS, TimeUnit.MILLISECONDS);
 }
 setMasterState(MasterState.HAVE_LOCK);
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

private static TServerInstance getTServerInstance(String address, ZooLock zooLock) {
 while (true) {
  try {
   return new TServerInstance(address, zooLock.getSessionId());
  } catch (KeeperException e) {
   log.error(e, e);
  } catch (InterruptedException e) {
   log.error(e, e);
  }
  UtilWaitThread.sleep(1000);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-gc

private void getZooLock(HostAndPort addr) throws KeeperException, InterruptedException {
 String path = ZooUtil.getRoot(getInstance()) + Constants.ZGC_LOCK;
 LockWatcher lockWatcher = new LockWatcher() {
  @Override
  public void lostLock(LockLossReason reason) {
   Halt.halt("GC lock in zookeeper lost (reason = " + reason + "), exiting!", 1);
  }
  @Override
  public void unableToMonitorLockNode(final Throwable e) {
   // ACCUMULO-3651 Level changed to error and FATAL added to message for slf4j compatibility
   Halt.halt(-1, new Runnable() {
    @Override
    public void run() {
     log.error("FATAL: No longer able to monitor lock node ", e);
    }
   });
  }
 };
 while (true) {
  lock = new ZooLock(path);
  if (lock.tryLock(lockWatcher,
    new ServerServices(addr.toString(), Service.GC_CLIENT).toString().getBytes())) {
   log.debug("Got GC ZooKeeper lock");
   return;
  }
  log.debug("Failed to get GC ZooKeeper lock, will retry");
  sleepUninterruptibly(1, TimeUnit.SECONDS);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server-base

public static void main(String[] args) throws Exception {
 Instance instance = HdfsZooInstance.getInstance();
 String tserverPath = ZooUtil.getRoot(instance) + Constants.ZTSERVERS;
 Opts opts = new Opts();
 opts.parseArgs(TabletServerLocks.class.getName(), args);
 ZooCache cache = new ZooCache(instance.getZooKeepers(), instance.getZooKeepersSessionTimeOut());
 if (opts.list) {
  IZooReaderWriter zoo = ZooReaderWriter.getInstance();
  List<String> tabletServers = zoo.getChildren(tserverPath);
  for (String tabletServer : tabletServers) {
   byte[] lockData = ZooLock.getLockData(cache, tserverPath + "/" + tabletServer, null);
   String holder = null;
   if (lockData != null) {
    holder = new String(lockData, UTF_8);
   }
   System.out.printf("%32s %16s%n", tabletServer, holder);
  }
 } else if (opts.delete != null) {
  ZooLock.deleteLock(tserverPath + "/" + args[1]);
 } else {
  System.out.println(
    "Usage : " + TabletServerLocks.class.getName() + " -list|-delete <tserver lock>");
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-tserver

tabletServerLock = new ZooLock(zPath);
 zoo.putPersistentData(zPath, new byte[0], NodeExistsPolicy.SKIP);
 if (tabletServerLock.tryLock(lw, lockContent)) {
  log.debug("Obtained tablet server lock " + tabletServerLock.getLockPath());
  lockID = tabletServerLock.getLockID()
    .serialize(ZooUtil.getRoot(getInstance()) + Constants.ZTSERVERS + "/");
  return;

代码示例来源:origin: org.apache.accumulo/accumulo-server

tabletServerLock = new ZooLock(zPath);
 zoo.putPersistentData(zPath, new byte[0], NodeExistsPolicy.SKIP);
 if (tabletServerLock.tryLock(lw, lockContent)) {
  log.debug("Obtained tablet server lock " + tabletServerLock.getLockPath());
  return;

代码示例来源:origin: org.apache.accumulo/accumulo-server

private String lockString(ZooLock mlock) {
 return mlock.getLockID().serialize(ZooUtil.getRoot(instance) + Constants.ZMASTER_LOCK);
}

代码示例来源:origin: org.apache.accumulo/accumulo-tserver

if (tabletServerLock == null || !tabletServerLock.wasLockAcquired()) {
 log.debug("Got " + request + " message before my lock was acquired, ignoring...");
 throw new RuntimeException("Lock not acquired");
if (tabletServerLock != null && tabletServerLock.wasLockAcquired()
  && !tabletServerLock.isLocked()) {
 Halt.halt(1, new Runnable() {
  @Override
  if (!ZooLock.isLockHeld(masterLockCache, lid)) {
   if (!ZooLock.isLockHeld(masterLockCache, lid)) {
    log.warn("Got " + request
      + " message from a master that does not hold the current lock " + lock);

代码示例来源:origin: org.apache.accumulo/accumulo-server-base

public static boolean deleteLock(String path, String lockData)
   throws InterruptedException, KeeperException {
  return deleteLock(ZooReaderWriter.getInstance(), path, lockData);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

lockHeld = ZooLock.isLockHeld(zooCache, new ZooUtil.LockID(zooRoot, lockId));
} catch (Exception e) {
 log.debug("Failed to verify lock was held " + lockId + " " + e.getMessage());

代码示例来源:origin: org.apache.accumulo/accumulo-test

zoo.putPersistentData(zPath, new byte[] {}, NodeExistsPolicy.SKIP);
ZooLock zlock = new ZooLock(zPath);
if (zlock.tryLock(lw, lockContent)) {
 log.debug("Obtained tablet server lock " + zlock.getLockPath());

代码示例来源:origin: org.apache.accumulo/accumulo-server-base

private static void retryZooKeeperUpdate(ClientContext context, ZooLock zooLock,
  ZooOperation op) {
 while (true) {
  try {
   IZooReaderWriter zoo = ZooReaderWriter.getInstance();
   if (zoo.isLockHeld(zooLock.getLockID())) {
    op.run(zoo);
   }
   break;
  } catch (Exception e) {
   log.error("Unexpected exception {}", e.getMessage(), e);
  }
  sleepUninterruptibly(1, TimeUnit.SECONDS);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

if (tabletServerLock == null || !tabletServerLock.wasLockAcquired()) {
 log.warn("Got " + request + " message from master before lock acquired, ignoring...");
 throw new RuntimeException("Lock not acquired");
if (tabletServerLock != null && tabletServerLock.wasLockAcquired() && !tabletServerLock.isLocked()) {
 Halt.halt(1, new Runnable() {
  @Override
  if (!ZooLock.isLockHeld(masterLockCache, lid)) {
   if (!ZooLock.isLockHeld(masterLockCache, lid)) {
    log.warn("Got " + request + " message from a master that does not hold the current lock " + lock);
    throw new RuntimeException("bad master lock");

代码示例来源:origin: org.apache.accumulo/accumulo-server

public static boolean deleteLock(String path, String lockData) throws InterruptedException, KeeperException {
  return deleteLock(ZooReaderWriter.getInstance(), path, lockData);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

public static void main(String[] args) throws Exception {
 Instance instance = HdfsZooInstance.getInstance();
 String tserverPath = ZooUtil.getRoot(instance) + Constants.ZTSERVERS;
 Opts opts = new Opts();
 opts.parseArgs(TabletServerLocks.class.getName(), args);
 ZooCache cache = new ZooCache(instance.getZooKeepers(), instance.getZooKeepersSessionTimeOut());
 if (opts.list) {
  IZooReaderWriter zoo = ZooReaderWriter.getInstance();
  List<String> tabletServers = zoo.getChildren(tserverPath);
  for (String tabletServer : tabletServers) {
   byte[] lockData = ZooLock.getLockData(cache, tserverPath + "/" + tabletServer, null);
   String holder = null;
   if (lockData != null) {
    holder = new String(lockData, UTF_8);
   }
   System.out.printf("%32s %16s%n", tabletServer, holder);
  }
 } else if (opts.delete != null) {
  ZooLock.deleteLock(tserverPath + "/" + args[1]);
 } else {
  System.out.println("Usage : " + TabletServerLocks.class.getName() + " -list|-delete <tserver lock>");
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server-base

lockHeld = ZooLock.isLockHeld(zooCache, new ZooUtil.LockID(zooRoot, lockId));
} catch (Exception e) {
 log.debug("Failed to verify lock was held {} {}", lockId, e.getMessage());

代码示例来源:origin: org.apache.accumulo/accumulo-server

private void getMasterLock(final String zMasterLoc) throws KeeperException, InterruptedException {
 log.info("trying to get master lock");
 final String masterClientAddress = org.apache.accumulo.core.util.AddressUtil.toString(new InetSocketAddress(hostname, getSystemConfiguration().getPort(
   Property.MASTER_CLIENTPORT)));
 while (true) {
  MasterLockWatcher masterLockWatcher = new MasterLockWatcher();
  masterLock = new ZooLock(zMasterLoc);
  masterLock.lockAsync(masterLockWatcher, masterClientAddress.getBytes(UTF_8));
  masterLockWatcher.waitForChange();
  if (masterLockWatcher.acquiredLock) {
   break;
  }
  if (!masterLockWatcher.failedToAcquireLock) {
   throw new IllegalStateException("master lock in unknown state");
  }
  masterLock.tryToCancelAsyncLockOrUnlock();
  UtilWaitThread.sleep(TIME_TO_WAIT_BETWEEN_LOCK_CHECKS);
 }
 setMasterState(MasterState.HAVE_LOCK);
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

private void getZooLock(InetSocketAddress addr) throws KeeperException, InterruptedException {
 String address = AddressUtil.toString(addr);
 String path = ZooUtil.getRoot(HdfsZooInstance.getInstance()) + Constants.ZGC_LOCK;
 LockWatcher lockWatcher = new LockWatcher() {
  public void lostLock(LockLossReason reason) {
   Halt.halt("GC lock in zookeeper lost (reason = " + reason + "), exiting!");
  }
  @Override
  public void unableToMonitorLockNode(final Throwable e) {
   Halt.halt(-1, new Runnable() {
    @Override
    public void run() {
     log.fatal("No longer able to monitor lock node ", e);
    }
   });
  }
 };
 while (true) {
  lock = new ZooLock(path);
  if (lock.tryLock(lockWatcher, new ServerServices(address, Service.GC_CLIENT).toString().getBytes(UTF_8))) {
   break;
  }
  UtilWaitThread.sleep(1000);
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server

TServerInstance getTabletSession() {
 String address = getClientAddressString();
 if (address == null)
  return null;
 try {
  return new TServerInstance(address, tabletServerLock.getSessionId());
 } catch (Exception ex) {
  log.warn("Unable to read session from tablet server lock" + ex);
  return null;
 }
}

代码示例来源:origin: org.apache.accumulo/accumulo-server-base

private String lockString(ZooLock mlock) {
 return mlock.getLockID()
   .serialize(ZooUtil.getRoot(context.getInstance()) + Constants.ZMASTER_LOCK);
}

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com