UpgradeSnapShotV1.java 文件源码

java
阅读 31 收藏 0 点赞 0 评论 0

项目:StreamBench 作者:
/**
 * create the old snapshot database
 * apply logs to it and create the final
 * database
 * @throws IOException
 */
private void loadThisSnapShot() throws IOException {  
    // pick the most recent snapshot
    File snapshot = findMostRecentSnapshot();
    if (snapshot == null) {
        throw new IOException("Invalid snapshots " +
                "or not snapshots in " + snapShotDir);
    }
    InputStream inputstream = new BufferedInputStream(
            new FileInputStream(snapshot));
    InputArchive ia = BinaryInputArchive.getArchive(inputstream);
    deserializeSnapshot(oldDataTree, ia, sessionsWithTimeouts);
    //ok done with the snapshot 
    // now apply the logs
    long snapshotZxid = oldDataTree.lastProcessedZxid;
    File[] files = FileTxnLog.getLogFiles(
            dataDir.listFiles(), snapshotZxid);
    long zxid = processLogFiles(oldDataTree, files);
    //check for this zxid to be sane
    if (zxid != oldDataTree.lastProcessedZxid) {
        LOG.error("Zxids not equal " + " log zxid " +
                zxid + " datatree processed " + oldDataTree.lastProcessedZxid);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号