gpt4 book ai didi

com.twitter.distributedlog.impl.metadata.ZKLogMetadata.getLogSegmentsPath()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-13 11:08:37 25 4
gpt4 key购买 nike

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

ZKLogMetadata.getLogSegmentsPath介绍

[英]Get the root path for log segments.
[中]获取日志段的根路径。

代码示例

代码示例来源:origin: twitter/distributedlog

String inprogressZNode(String inprogressZNodeName) {
    return logMetadata.getLogSegmentsPath() + "/" + inprogressZNodeName;
  }
}

代码示例来源:origin: twitter/distributedlog

/**
 * Get the znode path for the inprogressZNode
 */
String inprogressZNode(long ledgerId, long firstTxId, long logSegmentSeqNo) {
  return logMetadata.getLogSegmentsPath() + "/" + inprogressZNodeName(ledgerId, firstTxId, logSegmentSeqNo);
}

代码示例来源:origin: twitter/distributedlog

/**
 * Get the znode path for a finalize ledger
 */
String completedLedgerZNode(long firstTxId, long lastTxId, long logSegmentSeqNo) {
  return String.format("%s/%s", logMetadata.getLogSegmentsPath(),
      completedLedgerZNodeName(firstTxId, lastTxId, logSegmentSeqNo));
}

代码示例来源:origin: twitter/distributedlog

private void checkLogStreamExists() throws IOException {
  try {
    if (null == Utils.sync(zooKeeperClient, logMetadata.getLogSegmentsPath())
        .exists(logMetadata.getLogSegmentsPath(), false)) {
      throw new LogNotFoundException("Log " + getFullyQualifiedName() + " doesn't exist");
    }
  } catch (InterruptedException ie) {
    LOG.error("Interrupted while reading {}", logMetadata.getLogSegmentsPath(), ie);
    throw new DLInterruptedException("Interrupted while checking "
        + logMetadata.getLogSegmentsPath(), ie);
  } catch (KeeperException ke) {
    LOG.error("Error checking existence for {} : ", logMetadata.getLogSegmentsPath(), ke);
    throw new ZKException("Error checking existence for " + getFullyQualifiedName() + " : ", ke);
  }
}

代码示例来源:origin: twitter/distributedlog

@Override
public Future<Void> asyncClose() {
  // No-op
  this.zooKeeperClient.getWatcherManager().unregisterChildWatcher(logMetadata.getLogSegmentsPath(), this);
  return Future.Void();
}

代码示例来源:origin: twitter/distributedlog

try {
  final ZooKeeper zk = zooKeeperClient.get();
  zk.sync(logMetadata.getLogSegmentsPath(), new AsyncCallback.VoidCallback() {
    @Override
    public void processResult(int syncRc, String path, Object syncCtx) {
  LOG.error("Interrupted while reading {}", logMetadata.getLogSegmentsPath(), ie);
  promise.setException(new DLInterruptedException("Interrupted while checking "
      + logMetadata.getLogSegmentsPath(), ie));
} catch (ZooKeeperClient.ZooKeeperConnectionException e) {
  promise.setException(e);

代码示例来源:origin: twitter/distributedlog

public void deleteLog() throws IOException {
  lock.checkOwnershipAndReacquire();
  FutureUtils.result(purgeLogSegmentsOlderThanTxnId(-1));
  try {
    Utils.closeQuietly(lock);
    zooKeeperClient.get().exists(logMetadata.getLogSegmentsPath(), false);
    zooKeeperClient.get().exists(logMetadata.getMaxTxIdPath(), false);
    if (logMetadata.getLogRootPath().toLowerCase().contains("distributedlog")) {
      ZKUtil.deleteRecursive(zooKeeperClient.get(), logMetadata.getLogRootPath());
    } else {
      LOG.warn("Skip deletion of unrecognized ZK Path {}", logMetadata.getLogRootPath());
    }
  } catch (InterruptedException ie) {
    LOG.error("Interrupted while deleting log znodes", ie);
    throw new DLInterruptedException("Interrupted while deleting " + logMetadata.getLogRootPath(), ie);
  } catch (KeeperException ke) {
    LOG.error("Error deleting" + logMetadata.getLogRootPath() + " in zookeeper", ke);
  }
}

代码示例来源:origin: twitter/distributedlog

LOG.trace("Got ledger list from {} : {}", logMetadata.getLogSegmentsPath(), children);

代码示例来源:origin: twitter/distributedlog

zooKeeperClient.get().getChildren(logMetadata.getLogSegmentsPath(), watcher, new AsyncCallback.Children2Callback() {
  @Override
  public void processResult(final int rc, final String path, final Object ctx, final List<String> children, final Stat stat) {

代码示例来源:origin: twitter/distributedlog

void storeMaxSequenceNumber(final Transaction txn,
              final MaxLogSegmentSequenceNo maxSeqNo,
              final long seqNo,
              final boolean isInprogress) {
  byte[] data = DLUtils.serializeLogSegmentSequenceNumber(seqNo);
  Op zkOp = Op.setData(logMetadata.getLogSegmentsPath(), data, maxSeqNo.getZkVersion());
  txn.addOp(new ZKVersionedSetOp(zkOp, new Transaction.OpListener<Version>() {
    @Override
    public void onCommit(Version version) {
      if (validateLogSegmentSequenceNumber) {
        synchronized (inprogressLSSNs) {
          if (isInprogress) {
            inprogressLSSNs.add(seqNo);
          } else {
            inprogressLSSNs.removeFirst();
          }
        }
      }
      maxSeqNo.update((ZkVersion) version, seqNo);
    }
    @Override
    public void onAbort(Throwable t) {
      // no-op
    }
  }));
}

代码示例来源:origin: twitter/distributedlog

private static void updateMaxLogSegmentSequenceNo(ZooKeeperClient zkc, URI uri, String streamName,
                         DistributedLogConfiguration conf, byte[] data) throws Exception {
  String logSegmentsPath = ZKLogMetadata.getLogSegmentsPath(
      uri, streamName, conf.getUnpartitionedStreamName());
  zkc.get().setData(logSegmentsPath, data, -1);
}

代码示例来源:origin: twitter/distributedlog

private static MaxLogSegmentSequenceNo getMaxLogSegmentSequenceNo(ZooKeeperClient zkc, URI uri, String streamName,
                                 DistributedLogConfiguration conf) throws Exception {
  Stat stat = new Stat();
  String logSegmentsPath = ZKLogMetadata.getLogSegmentsPath(
      uri, streamName, conf.getUnpartitionedStreamName());
  byte[] data = zkc.get().getData(logSegmentsPath, false, stat);
  Versioned<byte[]> maxLSSNData = new Versioned<byte[]>(data, new ZkVersion(stat.getVersion()));
  return new MaxLogSegmentSequenceNo(maxLSSNData);
}

代码示例来源:origin: twitter/distributedlog

@Override
  public void processResult(int syncRc, String path, Object syncCtx) {
    if (KeeperException.Code.NONODE.intValue() == syncRc) {
      promise.setException(new LogNotFoundException(
          String.format("Log %s does not exist or has been deleted", getFullyQualifiedName())));
      return;
    } else if (KeeperException.Code.OK.intValue() != syncRc){
      promise.setException(new ZKException("Error on checking log existence for " + getFullyQualifiedName(),
          KeeperException.create(KeeperException.Code.get(syncRc))));
      return;
    }
    zk.exists(logMetadata.getLogSegmentsPath(), false, new AsyncCallback.StatCallback() {
      @Override
      public void processResult(int rc, String path, Object ctx, Stat stat) {
        if (KeeperException.Code.OK.intValue() == rc) {
          promise.setValue(null);
        } else if (KeeperException.Code.NONODE.intValue() == rc) {
          promise.setException(new LogNotFoundException(String.format("Log %s does not exist or has been deleted", getFullyQualifiedName())));
        } else {
          promise.setException(new ZKException("Error on checking log existence for " + getFullyQualifiedName(),
              KeeperException.create(KeeperException.Code.get(rc))));
        }
      }
    }, null);
  }
}, null);

代码示例来源:origin: twitter/distributedlog

.registerChildWatcher(logMetadata.getLogSegmentsPath(), this);

代码示例来源:origin: twitter/distributedlog

@Test(timeout = 60000)
public void testGetPaths() throws Exception {
  String rootPath = "/test-get-paths";
  URI uri = DLMTestUtil.createDLMURI(2181, rootPath);
  String logName = "test-log";
  String logIdentifier = "<default>";
  String logRootPath = uri.getPath() + "/" + logName + "/" + logIdentifier;
  String logSegmentName = "test-segment";
  ZKLogMetadata logMetadata = new ZKLogMetadata(uri, logName, logIdentifier);
  assertEquals("wrong log name", logName, logMetadata.getLogName());
  assertEquals("wrong root path", logRootPath, logMetadata.getLogRootPath());
  assertEquals("wrong log segments path",
      logRootPath + LOGSEGMENTS_PATH,
      logMetadata.getLogSegmentsPath());
  assertEquals("wrong log segment path",
      logRootPath + LOGSEGMENTS_PATH + "/" + logSegmentName,
      logMetadata.getLogSegmentPath(logSegmentName));
  assertEquals("wrong lock path",
      logRootPath + LOCK_PATH, logMetadata.getLockPath());
  assertEquals("wrong max tx id path",
      logRootPath + MAX_TXID_PATH, logMetadata.getMaxTxIdPath());
  assertEquals("wrong allocation path",
      logRootPath + ALLOCATION_PATH, logMetadata.getAllocationPath());
  assertEquals("wrong qualified name",
      logName + ":" + logIdentifier, logMetadata.getFullyQualifiedName());
}

代码示例来源:origin: twitter/distributedlog

ZKLogMetadata.getLogSegmentsPath(uri, name, confLocal.getUnpartitionedStreamName()));
ZKLogMetadata.getLogSegmentsPath(uri, name, confLocal.getUnpartitionedStreamName()));
ZKLogMetadata.getLogSegmentsPath(uri, name, confLocal.getUnpartitionedStreamName()));
ZKLogMetadata.getLogSegmentsPath(uri, name, confLocal.getUnpartitionedStreamName()));
ZKLogMetadata.getLogSegmentsPath(uri, name, conf.getUnpartitionedStreamName()));

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