gpt4 book ai didi

org.apache.hadoop.hbase.zookeeper.ZKUtil.getDataAndWatch()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-16 02:08:40 28 4
gpt4 key购买 nike

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

ZKUtil.getDataAndWatch介绍

[英]Get the data at the specified znode and set a watch. Returns the data and sets a watch if the node exists. Returns null and no watch is set if the node does not exist or there is an exception.
[中]在指定的znode获取数据并设置一个手表。如果节点存在,则返回数据并设置监视。返回null,如果节点不存在或存在异常,则不设置监视。

代码示例

代码示例来源:origin: apache/hbase

/**
 * Gets the data of the node.
 *
 * <p>If the node is currently available, the most up-to-date known version of
 * the data is returned.  If the node is not currently available, null is
 * returned.
 * @param refresh whether to refresh the data by calling ZK directly.
 * @return data of the node, null if unavailable
 */
public synchronized byte [] getData(boolean refresh) {
 if (refresh) {
  try {
   this.data = ZKUtil.getDataAndWatch(watcher, node);
  } catch(KeeperException e) {
   abortable.abort("Unexpected exception handling getData", e);
  }
 }
 return this.data;
}

代码示例来源:origin: apache/hbase

@Override
public void nodeCreated(String path) {
 if (!validate(path)) {
  return;
 }
 try {
  byte[] data = ZKUtil.getDataAndWatch(watcher, path);
  upsertQueue(path, data);
 } catch (KeeperException e) {
  LOG.warn("Unexpected exception handling nodeCreated event", e);
 }
}

代码示例来源:origin: apache/hbase

@Override
 public void run() {
  // update cache on an existing table node
  String entry = ZKUtil.getNodeName(path);
  try {
   byte[] data = ZKUtil.getDataAndWatch(watcher, path);
   refreshAuthManager(entry, data);
  } catch (KeeperException ke) {
   LOG.error("Error reading data from zookeeper for node " + entry, ke);
   // only option is to abort
   watcher.abort("ZooKeeper error getting data for node " + entry, ke);
  } catch (IOException ioe) {
   LOG.error("Error reading permissions writables", ioe);
  }
 }
});

代码示例来源:origin: apache/hbase

@Override
public synchronized void nodeCreated(String path) {
 if (!path.equals(node)) {
  return;
 }
 try {
  byte [] data = ZKUtil.getDataAndWatch(watcher, node);
  if (data != null) {
   this.data = data;
   notifyAll();
  } else {
   nodeDeleted(path);
  }
 } catch(KeeperException e) {
  abortable.abort("Unexpected exception handling nodeCreated event", e);
 }
}

代码示例来源:origin: apache/hbase

@Override
public void nodeDataChanged(String path) {
 if (path.equals(labelZnode) || path.equals(userAuthsZnode)) {
  try {
   watcher.sync(path);
   byte[] data = ZKUtil.getDataAndWatch(watcher, path);
   if (path.equals(labelZnode)) {
    refreshVisibilityLabelsCache(data);
   } else {
    refreshUserAuthsCache(data);
   }
  } catch (KeeperException ke) {
   LOG.error("Error reading data from zookeeper for node " + path, ke);
   // only option is to abort
   watcher.abort("ZooKeeper error getting data for node " + path, ke);
  }
 }
}

代码示例来源:origin: apache/hbase

public void start() throws KeeperException {
 watcher.registerListener(this);
 ZKUtil.createWithParents(watcher, labelZnode);
 ZKUtil.createWithParents(watcher, userAuthsZnode);
 byte[] data = ZKUtil.getDataAndWatch(watcher, labelZnode);
 if (data != null && data.length > 0) {
  refreshVisibilityLabelsCache(data);
 }
 data = ZKUtil.getDataAndWatch(watcher, userAuthsZnode);
 if (data != null && data.length > 0) {
  refreshUserAuthsCache(data);
 }
}

代码示例来源:origin: apache/hbase

try {
 this.data = ZKUtil.getDataAndWatch(watcher, node);
} catch(KeeperException e) {
  try {
   this.data = ZKUtil.getDataAndWatch(watcher, node);
  } catch (KeeperException e) {
   LOG.warn("Unexpected exception handling blockUntilAvailable", e);

代码示例来源:origin: apache/hbase

for (String node : nodes) {
 String nodePath = ZNodePaths.joinZNode(baseNode, node);
 byte[] data = ZKUtil.getDataAndWatch(zkw, nodePath);
 newNodes.add(new NodeAndData(nodePath, data));

代码示例来源:origin: apache/hbase

@Override
public void nodeDataChanged(String path) {
 if (keysParentZNode.equals(ZKUtil.getParent(path))) {
  try {
   byte[] data = ZKUtil.getDataAndWatch(watcher, path);
   if (data == null || data.length == 0) {
    LOG.debug("Ignoring empty node "+path);
    return;
   }
   AuthenticationKey key = (AuthenticationKey)Writables.getWritable(data,
     new AuthenticationKey());
   secretManager.addKey(key);
  } catch (KeeperException ke) {
   LOG.error(HBaseMarkers.FATAL, "Error reading data from zookeeper", ke);
   watcher.abort("Error reading updated key znode "+path, ke);
  } catch (IOException ioe) {
   LOG.error(HBaseMarkers.FATAL, "Error reading key writables", ioe);
   watcher.abort("Error reading key writables from znode "+path, ioe);
  }
 }
}

代码示例来源:origin: apache/hbase

/**
 * Starts the tracking of the node in ZooKeeper.
 *
 * <p>Use {@link #blockUntilAvailable()} to block until the node is available
 * or {@link #getData(boolean)} to get the data of the node if it is available.
 */
public synchronized void start() {
 this.watcher.registerListener(this);
 try {
  if(ZKUtil.watchAndCheckExists(watcher, node)) {
   byte [] data = ZKUtil.getDataAndWatch(watcher, node);
   if(data != null) {
    this.data = data;
   } else {
    // It existed but now does not, try again to ensure a watch is set
    LOG.debug("Try starting again because there is no data from " + node);
    start();
   }
  }
 } catch (KeeperException e) {
  abortable.abort("Unexpected exception during initialization, aborting", e);
 }
}

代码示例来源:origin: apache/hbase

private void watchAndCheckExists(String node) {
 try {
  if (ZKUtil.watchAndCheckExists(watcher, node)) {
   byte[] data = ZKUtil.getDataAndWatch(watcher, node);
   if (data != null) {
    // put the data into queue
    upsertQueue(node, data);
   } else {
    // It existed but now does not, should has been tracked by our watcher, ignore
    LOG.debug("Found no data from " + node);
    watchAndCheckExists(node);
   }
  } else {
   // cleanup stale ZNodes on client ZK to avoid invalid requests to server
   ZKUtil.deleteNodeFailSilent(clientZkWatcher, node);
  }
 } catch (KeeperException e) {
  server.abort("Unexpected exception during initialization, aborting", e);
 }
}

代码示例来源:origin: apache/hbase

byte[] currentId = ZKUtil.getDataAndWatch(watcher, leaderZNode);
if (currentId != null && Bytes.equals(currentId, nodeId)) {

代码示例来源:origin: apache/hbase

ZKUtil.getDataAndWatch(this.watcher, this.watcher.getZNodePaths().masterAddressZNode);
if (bytes == null) {
 msg = ("A master was detected, but went down before its address " +

代码示例来源:origin: harbby/presto-connectors

/**
  * Reinstall watcher because watcher only fire once though we're only interested in nodeDeleted
  * event we need to register the watcher in case other event happens
  */
 private void registerWatcher(String path) {
  String parentPath = path.substring(0, path.lastIndexOf('/'));
  if (!this.watcher.recoveringRegionsZNode.equalsIgnoreCase(parentPath)) {
   return;
  }

  try {
   ZKUtil.getDataAndWatch(watcher, path);
  } catch (KeeperException e) {
   LOG.warn("Can't register watcher on znode " + path, e);
  }
 }
}

代码示例来源:origin: org.apache.hbase/hbase-zookeeper

/**
 * Gets the data of the node.
 *
 * <p>If the node is currently available, the most up-to-date known version of
 * the data is returned.  If the node is not currently available, null is
 * returned.
 * @param refresh whether to refresh the data by calling ZK directly.
 * @return data of the node, null if unavailable
 */
public synchronized byte [] getData(boolean refresh) {
 if (refresh) {
  try {
   this.data = ZKUtil.getDataAndWatch(watcher, node);
  } catch(KeeperException e) {
   abortable.abort("Unexpected exception handling getData", e);
  }
 }
 return this.data;
}

代码示例来源:origin: harbby/presto-connectors

@Override
public synchronized void nodeCreated(String path) {
 if (!path.equals(node)) return;
 try {
  byte [] data = ZKUtil.getDataAndWatch(watcher, node);
  if (data != null) {
   this.data = data;
   notifyAll();
  } else {
   nodeDeleted(path);
  }
 } catch(KeeperException e) {
  abortable.abort("Unexpected exception handling nodeCreated event", e);
 }
}

代码示例来源:origin: co.cask.hbase/hbase

@Override
public synchronized void nodeCreated(String path) {
 if (!path.equals(node)) return;
 try {
  byte [] data = ZKUtil.getDataAndWatch(watcher, node);
  if (data != null) {
   this.data = data;
   notifyAll();
  } else {
   nodeDeleted(path);
  }
 } catch(KeeperException e) {
  abortable.abort("Unexpected exception handling nodeCreated event", e);
 }
}

代码示例来源:origin: org.apache.hbase/hbase-zookeeper

@Override
public synchronized void nodeCreated(String path) {
 if (!path.equals(node)) {
  return;
 }
 try {
  byte [] data = ZKUtil.getDataAndWatch(watcher, node);
  if (data != null) {
   this.data = data;
   notifyAll();
  } else {
   nodeDeleted(path);
  }
 } catch(KeeperException e) {
  abortable.abort("Unexpected exception handling nodeCreated event", e);
 }
}

代码示例来源:origin: harbby/presto-connectors

public void start() throws KeeperException {
 watcher.registerListener(this);
 ZKUtil.createWithParents(watcher, labelZnode);
 ZKUtil.createWithParents(watcher, userAuthsZnode);
 byte[] data = ZKUtil.getDataAndWatch(watcher, labelZnode);
 if (data != null && data.length > 0) {
  refreshVisibilityLabelsCache(data);
 }
 data = ZKUtil.getDataAndWatch(watcher, userAuthsZnode);
 if (data != null && data.length > 0) {
  refreshUserAuthsCache(data);
 }
}

代码示例来源:origin: co.cask.hbase/hbase

public void stop() {
  try {
   // If our address is in ZK, delete it on our way out
   byte [] bytes =
    ZKUtil.getDataAndWatch(watcher, watcher.masterAddressZNode);
   // TODO: redo this to make it atomic (only added for tests)
   ServerName master = bytes == null ? null : ServerName.parseVersionedServerName(bytes);
   if (master != null &&  master.equals(this.sn)) {
    ZKUtil.deleteNode(watcher, watcher.masterAddressZNode);
   }
  } catch (KeeperException e) {
   LOG.error(this.watcher.prefix("Error deleting our own master address node"), e);
  }
 }
}

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