当前位置: 首页>>代码示例>>Java>>正文


Java QuorumPacket类代码示例

本文整理汇总了Java中org.apache.zookeeper.server.quorum.QuorumPacket的典型用法代码示例。如果您正苦于以下问题:Java QuorumPacket类的具体用法?Java QuorumPacket怎么用?Java QuorumPacket使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


QuorumPacket类属于org.apache.zookeeper.server.quorum包,在下文中一共展示了QuorumPacket类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: logQuorumPacket

import org.apache.zookeeper.server.quorum.QuorumPacket; //导入依赖的package包/类
static public void logQuorumPacket(Logger log, long mask,
        char direction, QuorumPacket qp)
{
    return;

    // if (isTraceEnabled(log, mask)) {
    // logTraceMessage(LOG, mask, direction + " "
    // + FollowerHandler.packetToString(qp));
    // }
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:11,代码来源:ZooTrace.java

示例2: addCommittedProposal

import org.apache.zookeeper.server.quorum.QuorumPacket; //导入依赖的package包/类
/**
 * maintains a list of last <i>committedLog</i>
 *  or so committed requests. This is used for
 * fast follower synchronization.
 * @param request committed request
 */
public void addCommittedProposal(Request request) {
    WriteLock wl = logLock.writeLock();
    try {
        wl.lock();
        if (committedLog.size() > commitLogCount) {
            committedLog.removeFirst();
            minCommittedLog = committedLog.getFirst().packet.getZxid();
        }
        if (committedLog.size() == 0) {
            minCommittedLog = request.zxid;
            maxCommittedLog = request.zxid;
        }

        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        BinaryOutputArchive boa = BinaryOutputArchive.getArchive(baos);
        try {
            request.hdr.serialize(boa, "hdr");
            if (request.txn != null) {
                request.txn.serialize(boa, "txn");
            }
            baos.close();
        } catch (IOException e) {
            LOG.error("This really should be impossible", e);
        }
        QuorumPacket pp = new QuorumPacket(Leader.PROPOSAL, request.zxid,
                baos.toByteArray(), null);
        Proposal p = new Proposal();
        p.packet = pp;
        p.request = request;
        committedLog.add(p);
        maxCommittedLog = p.packet.getZxid();
    } finally {
        wl.unlock();
    }
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:42,代码来源:ZKDatabase.java

示例3: logQuorumPacket

import org.apache.zookeeper.server.quorum.QuorumPacket; //导入依赖的package包/类
static public void logQuorumPacket(Logger log, long mask,
        char direction, QuorumPacket qp)
{
    if (isTraceEnabled(log, mask)) { 
        logTraceMessage(log, mask, direction +
                " " + LearnerHandler.packetToString(qp));
     }
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:9,代码来源:ZooTrace.java

示例4: next

import org.apache.zookeeper.server.quorum.QuorumPacket; //导入依赖的package包/类
/**
 * Proposal returned by this iterator has request part set to null, since
 * it is not used for follower sync-up.
 */
@Override
public Proposal next() {

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    BinaryOutputArchive boa = BinaryOutputArchive.getArchive(baos);
    Proposal p = new Proposal();
    try {
        TxnHeader hdr = itr.getHeader();
        Record txn = itr.getTxn();
        hdr.serialize(boa, "hdr");
        if (txn != null) {
            txn.serialize(boa, "txn");
        }
        baos.close();

        QuorumPacket pp = new QuorumPacket(Leader.PROPOSAL, itr.getHeader()
                .getZxid(), baos.toByteArray(), null);
        p.packet = pp;
        p.request = null;

        // This is the only place that can throw IO exception
        hasNext = itr.next();

    } catch (IOException e) {
        LOG.error("Unable to read txnlog from disk", e);
        hasNext = false;
    }

    return p;
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:35,代码来源:TxnLogProposalIterator.java

示例5: addCommittedProposal

import org.apache.zookeeper.server.quorum.QuorumPacket; //导入依赖的package包/类
/**
 * maintains a list of last <i>committedLog</i>
 *  or so committed requests. This is used for
 * fast follower synchronization.
 * @param request committed request
 */
public void addCommittedProposal(Request request) {
    WriteLock wl = logLock.writeLock();
    try {
        wl.lock();
        if (committedLog.size() > commitLogCount) {
            committedLog.removeFirst();
            minCommittedLog = committedLog.getFirst().packet.getZxid();
        }
        if (committedLog.isEmpty()) {
            minCommittedLog = request.zxid;
            maxCommittedLog = request.zxid;
        }

        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        BinaryOutputArchive boa = BinaryOutputArchive.getArchive(baos);
        try {
            request.getHdr().serialize(boa, "hdr");
            if (request.getTxn() != null) {
                request.getTxn().serialize(boa, "txn");
            }
            baos.close();
        } catch (IOException e) {
            LOG.error("This really should be impossible", e);
        }
        QuorumPacket pp = new QuorumPacket(Leader.PROPOSAL, request.zxid,
                baos.toByteArray(), null);
        Proposal p = new Proposal();
        p.packet = pp;
        p.request = request;
        committedLog.add(p);
        maxCommittedLog = p.packet.getZxid();
    } finally {
        wl.unlock();
    }
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:42,代码来源:ZKDatabase.java


注:本文中的org.apache.zookeeper.server.quorum.QuorumPacket类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。