gpt4 book ai didi

com.twitter.distributedlog.zk.ZKVersionedSetOp.()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-13 11:06:47 24 4
gpt4 key购买 nike

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

ZKVersionedSetOp.<init>介绍

暂无

代码示例

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

private synchronized void completeAllocation(LedgerHandle lh) {
  allocatedLh = lh;
  if (null == tryObtainTxn) {
    return;
  }
  org.apache.zookeeper.Op zkSetDataOp = org.apache.zookeeper.Op.setData(
      allocatePath, DistributedLogConstants.EMPTY_BYTES, version.getZnodeVersion());
  ZKVersionedSetOp commitOp = new ZKVersionedSetOp(zkSetDataOp, this);
  tryObtainTxn.addOp(commitOp);
  setPhase(Phase.HANDING_OVER);
  FutureUtils.setValue(allocatePromise, lh);
}

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

void storeMaxTxId(final ZKTransaction txn,
         final MaxTxId maxTxId,
         final long txId) {
  byte[] data = maxTxId.couldStore(txId);
  if (null != data) {
    Op zkOp = Op.setData(maxTxId.getZkPath(), data, -1);
    txn.addOp(new ZKVersionedSetOp(zkOp, new Transaction.OpListener<Version>() {
      @Override
      public void onCommit(Version version) {
        maxTxId.setMaxTxId(txId);
      }
      @Override
      public void onAbort(Throwable t) {
      }
    }));
  }
}

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

@Override
public void storeMaxLogSegmentSequenceNumber(Transaction<Object> txn,
                       String path,
                       Versioned<Long> lssn,
                       Transaction.OpListener<Version> listener) {
  Version version = lssn.getVersion();
  assert(version instanceof ZkVersion);
  ZkVersion zkVersion = (ZkVersion) version;
  byte[] data = DLUtils.serializeLogSegmentSequenceNumber(lssn.getValue());
  Op setDataOp = Op.setData(path, data, zkVersion.getZnodeVersion());
  ZKOp zkOp = new ZKVersionedSetOp(setDataOp, listener);
  txn.addOp(zkOp);
}

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

@Override
public void storeMaxTxnId(Transaction<Object> txn,
             String path,
             Versioned<Long> transactionId,
             Transaction.OpListener<Version> listener) {
  Version version = transactionId.getVersion();
  assert(version instanceof ZkVersion);
  ZkVersion zkVersion = (ZkVersion) version;
  byte[] data = DLUtils.serializeTransactionId(transactionId.getValue());
  Op setDataOp = Op.setData(path, data, zkVersion.getZnodeVersion());
  ZKOp zkOp = new ZKVersionedSetOp(setDataOp, listener);
  txn.addOp(zkOp);
}

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

@Test(timeout = 60000)
public void testAbortNullOpResult() throws Exception {
  final AtomicReference<Throwable> exception =
      new AtomicReference<Throwable>();
  final CountDownLatch latch = new CountDownLatch(1);
  ZKVersionedSetOp versionedSetOp =
      new ZKVersionedSetOp(mock(Op.class), new Transaction.OpListener<Version>() {
        @Override
        public void onCommit(Version r) {
          // no-op
        }
        @Override
        public void onAbort(Throwable t) {
          exception.set(t);
          latch.countDown();
        }
      });
  KeeperException ke = KeeperException.create(KeeperException.Code.SESSIONEXPIRED);
  versionedSetOp.abortOpResult(ke, null);
  latch.await();
  assertTrue(ke == exception.get());
}

代码示例来源: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

@Test(timeout = 60000)
  public void testAbortOpResult() throws Exception {
    final AtomicReference<Throwable> exception =
        new AtomicReference<Throwable>();
    final CountDownLatch latch = new CountDownLatch(1);
    ZKVersionedSetOp versionedSetOp =
        new ZKVersionedSetOp(mock(Op.class), new Transaction.OpListener<Version>() {
          @Override
          public void onCommit(Version r) {
            // no-op
          }

          @Override
          public void onAbort(Throwable t) {
            exception.set(t);
            latch.countDown();
          }
        });
    KeeperException ke = KeeperException.create(KeeperException.Code.SESSIONEXPIRED);
    OpResult opResult = new OpResult.ErrorResult(KeeperException.Code.NONODE.intValue());
    versionedSetOp.abortOpResult(ke, opResult);
    latch.await();
    assertTrue(exception.get() instanceof KeeperException.NoNodeException);
  }
}

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