gpt4 book ai didi

org.apache.accumulo.fate.ZooStore类的使用及代码示例

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

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

ZooStore介绍

暂无

代码示例

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

final ReadOnlyTStore<ServerUtil> fate = new ReadOnlyStore<>(new ZooStore<>(
  context.getZooKeeperRoot() + Constants.ZFATE, context.getZooReaderWriter()));
if (!(fate.list().isEmpty())) {

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

@Override
public TStatus getStatus(long tid) {
 verifyReserved(tid);
 return _getStatus(tid);
}

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

@SuppressWarnings("unchecked")
@Override
public Repo<T> top(long tid) {
 verifyReserved(tid);
 for (int i = 0; i < RETRIES; i++) {
  String txpath = getTXPath(tid);
  try {
   String top;
   try {
    top = findTop(txpath);
    if (top == null) {
     return null;
    }
   } catch (KeeperException.NoNodeException ex) {
    throw new RuntimeException(ex);
   }
   byte[] ser = zk.getData(txpath + "/" + top, null);
   return (Repo<T>) deserialize(ser);
  } catch (KeeperException.NoNodeException ex) {
   log.debug("zookeeper error reading " + txpath + ": " + ex, ex);
   sleepUninterruptibly(100, TimeUnit.MILLISECONDS);
   continue;
  } catch (Exception e) {
   throw new RuntimeException(e);
  }
 }
 return null;
}

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

@Override
public void pop(long tid) {
 verifyReserved(tid);
 try {
  String txpath = getTXPath(tid);
  String top = findTop(txpath);
  if (top == null)
   throw new IllegalStateException("Tried to pop when empty " + tid);
  zk.recursiveDelete(txpath + "/" + top, NodeMissingPolicy.SKIP);
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public void delete(long tid) {
 verifyReserved(tid);
 try {
  zk.recursiveDelete(getTXPath(tid), NodeMissingPolicy.SKIP);
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public void push(long tid, Repo<T> repo) throws StackOverflowException {
 verifyReserved(tid);
 String txpath = getTXPath(tid);
 try {
  String top = findTop(txpath);
  if (top != null && Long.parseLong(top.split("_")[1]) > 100) {
   throw new StackOverflowException("Repo stack size too large");
  }
  zk.putPersistentSequential(txpath + "/repo_", serialize(repo));
 } catch (StackOverflowException soe) {
  throw soe;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

IZooReaderWriter zk = getZooReaderWriter(context, siteConfig,
  cl.getOptionValue(secretOption.getOpt()));
ZooStore<FateCommand> zs = new ZooStore<>(path, zk);
  txids = zs.list();
 } else {
  txids = new ArrayList<>();
  List<ReadOnlyRepo<FateCommand>> repoStack = zs.getStack(txid);
  txStacks.add(new FateStack(txid, repoStack));

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

@Override
public Serializable getProperty(long tid, String prop) {
 verifyReserved(tid);
 try {
  byte[] data = zk.getData(getTXPath(tid) + "/prop_" + prop, null);
  if (data[0] == 'O') {
   byte[] sera = new byte[data.length - 2];
   System.arraycopy(data, 2, sera, 0, sera.length);
   return (Serializable) deserialize(sera);
  } else if (data[0] == 'S') {
   return new String(data, 2, data.length - 2, UTF_8);
  } else {
   throw new IllegalStateException("Bad property data " + prop);
  }
 } catch (NoNodeException nne) {
  return null;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public void setProperty(long tid, String prop, Serializable so) {
 verifyReserved(tid);
 try {
  if (so instanceof String) {
   zk.putPersistentData(getTXPath(tid) + "/prop_" + prop, ("S " + so).getBytes(UTF_8),
     NodeExistsPolicy.OVERWRITE);
  } else {
   byte[] sera = serialize(so);
   byte[] data = new byte[sera.length + 2];
   System.arraycopy(sera, 0, data, 2, sera.length);
   data[0] = 'O';
   data[1] = ' ';
   zk.putPersistentData(getTXPath(tid) + "/prop_" + prop, data, NodeExistsPolicy.OVERWRITE);
  }
 } catch (Exception e2) {
  throw new RuntimeException(e2);
 }
}

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

@Override
public List<ReadOnlyRepo<T>> getStack(long tid) {
 String txpath = getTXPath(tid);
     ser = zk.getData(txpath + "/" + child, null);
     @SuppressWarnings("unchecked")
     ReadOnlyRepo<T> repo = (ReadOnlyRepo<T>) deserialize(ser);
     dops.add(repo);
    } catch (KeeperException.NoNodeException e) {

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

long tid = parseTid(txdir);
  return tid;
 } else {
  unreserve(tid);
 unreserve(tid);
} catch (Exception e) {
 unreserve(tid);
 throw e;

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

private TStatus _getStatus(long tid) {
 try {
  return TStatus.valueOf(new String(zk.getData(getTXPath(tid), null), UTF_8));
 } catch (NoNodeException nne) {
  return TStatus.UNKNOWN;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public List<Long> list() {
 try {
  ArrayList<Long> l = new ArrayList<>();
  List<String> transactions = zk.getChildren(path);
  for (String txid : transactions) {
   l.add(parseTid(txid));
  }
  return l;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public TStatus waitForStatusChange(long tid, EnumSet<TStatus> expected) {
 while (true) {
  long events;
  synchronized (this) {
   events = statusChangeEvents;
  }
  TStatus status = _getStatus(tid);
  if (expected.contains(status))
   return status;
  synchronized (this) {
   if (events == statusChangeEvents) {
    try {
     this.wait(5000);
    } catch (InterruptedException e) {
     throw new RuntimeException(e);
    }
   }
  }
 }
}

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

@Override
public void push(long tid, Repo<T> repo) throws StackOverflowException {
 verifyReserved(tid);
 String txpath = getTXPath(tid);
 try {
  String top = findTop(txpath);
  if (top != null && Long.parseLong(top.split("_")[1]) > 100) {
   throw new StackOverflowException("Repo stack size too large");
  }
  zk.putPersistentSequential(txpath + "/repo_", serialize(repo));
 } catch (StackOverflowException soe) {
  throw soe;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

IZooReaderWriter zk = getZooReaderWriter(shellState.getInstance(),
  cl.getOptionValue(secretOption.getOpt()));
ZooStore<FateCommand> zs = new ZooStore<>(path, zk);
  txids = zs.list();
 } else {
  txids = new ArrayList<>();
  List<ReadOnlyRepo<FateCommand>> repoStack = zs.getStack(txid);
  txStacks.add(new FateStack(txid, repoStack));

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

@Override
public void pop(long tid) {
 verifyReserved(tid);
 try {
  String txpath = getTXPath(tid);
  String top = findTop(txpath);
  if (top == null)
   throw new IllegalStateException("Tried to pop when empty " + tid);
  zk.recursiveDelete(txpath + "/" + top, NodeMissingPolicy.SKIP);
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public Serializable getProperty(long tid, String prop) {
 verifyReserved(tid);
 try {
  byte[] data = zk.getData(getTXPath(tid) + "/prop_" + prop, null);
  if (data[0] == 'O') {
   byte[] sera = new byte[data.length - 2];
   System.arraycopy(data, 2, sera, 0, sera.length);
   return (Serializable) deserialize(sera);
  } else if (data[0] == 'S') {
   return new String(data, 2, data.length - 2, UTF_8);
  } else {
   throw new IllegalStateException("Bad property data " + prop);
  }
 } catch (NoNodeException nne) {
  return null;
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
}

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

@Override
public void setProperty(long tid, String prop, Serializable so) {
 verifyReserved(tid);
 try {
  if (so instanceof String) {
   zk.putPersistentData(getTXPath(tid) + "/prop_" + prop, ("S " + so).getBytes(UTF_8),
     NodeExistsPolicy.OVERWRITE);
  } else {
   byte[] sera = serialize(so);
   byte[] data = new byte[sera.length + 2];
   System.arraycopy(sera, 0, data, 2, sera.length);
   data[0] = 'O';
   data[1] = ' ';
   zk.putPersistentData(getTXPath(tid) + "/prop_" + prop, data, NodeExistsPolicy.OVERWRITE);
  }
 } catch (Exception e2) {
  throw new RuntimeException(e2);
 }
}

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

@Override
public void setStatus(long tid, TStatus status) {
 verifyReserved(tid);
 try {
  zk.putPersistentData(getTXPath(tid), status.name().getBytes(UTF_8),
    NodeExistsPolicy.OVERWRITE);
 } catch (Exception e) {
  throw new RuntimeException(e);
 }
 synchronized (this) {
  statusChangeEvents++;
 }
}

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