當前位置: 首頁>>代碼示例>>Java>>正文


Java FileTxnLog類代碼示例

本文整理匯總了Java中org.apache.zookeeper.server.persistence.FileTxnLog的典型用法代碼示例。如果您正苦於以下問題:Java FileTxnLog類的具體用法?Java FileTxnLog怎麽用?Java FileTxnLog使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


FileTxnLog類屬於org.apache.zookeeper.server.persistence包,在下文中一共展示了FileTxnLog類的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: loadThisSnapShot

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
/**
 * 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);
    }
}
 
開發者ID:maoling,項目名稱:fuck_zookeeper,代碼行數:30,代碼來源:UpgradeSnapShotV1.java

示例2: testGetLogFiles

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
@Test
public void testGetLogFiles() {
    File[] files = new File[5];

    files[0] = new File("log.10027c6de");
    files[1] = new File("log.10027c6df");
    files[2] = new File("snapshot.10027c6dd");
    files[3] = new File("log.10027c6dc");
    files[4] = new File("log.20027c6dc");

    File[] orig = files.clone();

    File[] filelist =
            FileTxnLog.getLogFiles(files,
            Long.parseLong("10027c6de", 16));

    Assert.assertEquals(3, filelist.length);
    Assert.assertEquals(orig[0], filelist[0]);
    Assert.assertEquals(orig[1], filelist[1]);
    Assert.assertEquals(orig[4], filelist[2]);
}
 
開發者ID:maoling,項目名稱:fuck_zookeeper,代碼行數:22,代碼來源:ZooKeeperServerTest.java

示例3: testPad

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
/**
 * Simulates ZOOKEEPER-1069 and verifies that flush() before padLogFile
 * fixes it.
 */
@Test
public void testPad() throws Exception {
    File tmpDir = ClientBase.createTmpDir();
    FileTxnLog txnLog = new FileTxnLog(tmpDir);
    TxnHeader txnHeader = new TxnHeader(0xabcd, 0x123, 0x123,
          System.currentTimeMillis(), OpCode.create);
    Record txn = new CreateTxn("/Test", new byte[0], null, false, 1);
    txnLog.append(txnHeader, txn);
    FileInputStream in = new FileInputStream(tmpDir.getPath() + "/log." +
          Long.toHexString(txnHeader.getZxid()));
    BinaryInputArchive ia  = BinaryInputArchive.getArchive(in);
    FileHeader header = new FileHeader();
    header.deserialize(ia, "fileheader");
    LOG.info("Received magic : " + header.getMagic() +
          " Expected : " + FileTxnLog.TXNLOG_MAGIC);
    Assert.assertTrue("Missing magic number ",
          header.getMagic() == FileTxnLog.TXNLOG_MAGIC);
}
 
開發者ID:maoling,項目名稱:fuck_zookeeper,代碼行數:23,代碼來源:LoadFromLogTest.java

示例4: testPad

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
/**
 * Simulates ZOOKEEPER-1069 and verifies that flush() before padLogFile
 * fixes it.
 */
@Test
public void testPad() throws Exception {
    File tmpDir = ClientBase.createTmpDir();
    FileTxnLog txnLog = new FileTxnLog(tmpDir);
    TxnHeader txnHeader = new TxnHeader(0xabcd, 0x123, 0x123,
          Time.currentElapsedTime(), OpCode.create);
    Record txn = new CreateTxn("/Test", new byte[0], null, false, 1);
    txnLog.append(txnHeader, txn);
    FileInputStream in = new FileInputStream(tmpDir.getPath() + "/log." +
          Long.toHexString(txnHeader.getZxid()));
    BinaryInputArchive ia  = BinaryInputArchive.getArchive(in);
    FileHeader header = new FileHeader();
    header.deserialize(ia, "fileheader");
    LOG.info("Received magic : " + header.getMagic() +
          " Expected : " + FileTxnLog.TXNLOG_MAGIC);
    Assert.assertTrue("Missing magic number ",
          header.getMagic() == FileTxnLog.TXNLOG_MAGIC);
}
 
開發者ID:didichuxing2,項目名稱:https-github.com-apache-zookeeper,代碼行數:23,代碼來源:LoadFromLogTest.java

示例5: testPad

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
/**
 * Simulates ZOOKEEPER-1069 and verifies that flush() before padLogFile
 * fixes it.
 */
@Test
public void testPad() throws Exception {
    File tmpDir = ClientBase.createTmpDir();
    FileTxnLog txnLog = new FileTxnLog(tmpDir);
    TxnHeader txnHeader = new TxnHeader(0xabcd, 0x123, 0x123,
          System.currentTimeMillis(), OpCode.create);
    Record txn = new CreateTxn("/Test", new byte[0], null, false, 1);
    txnLog.append(txnHeader, txn);
    FileInputStream in = new FileInputStream(tmpDir.getPath() + "/log." +
          Long.toHexString(txnHeader.getZxid()));
    BinaryInputArchive ia  = BinaryInputArchive.getArchive(in);
    FileHeader header = new FileHeader();
    header.deserialize(ia, "fileheader");
    LOG.info("Expected header :" + header.getMagic() +
          " Received : " + FileTxnLog.TXNLOG_MAGIC);
    Assert.assertTrue("Missing magic number ",
          header.getMagic() == FileTxnLog.TXNLOG_MAGIC);
}
 
開發者ID:gerritjvv,項目名稱:bigstreams,代碼行數:23,代碼來源:LoadFromLogTest.java

示例6: ZooKeeperLogParser

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
public ZooKeeperLogParser(InputStream log)
{
    logStream = BinaryInputArchive.getArchive(log);

    boolean         localValidHeader = false;
    try
    {
        FileHeader fhdr = new FileHeader();
        fhdr.deserialize(logStream, "fileheader");
        localValidHeader = (fhdr.getMagic() == FileTxnLog.TXNLOG_MAGIC);
    }
    catch ( IOException e )
    {
        // ignore
    }
    validHeader = localValidHeader;
}
 
開發者ID:dcos,項目名稱:exhibitor,代碼行數:18,代碼來源:ZooKeeperLogParser.java

示例7: testGetLogFiles

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
@Test
public void testGetLogFiles() {
    File[] files = new File[5];

    files[0] = new File("log.10027c6de");
    files[1] = new File("log.10027c6df");
    files[2] = new File("snapshot.10027c6dd");
    files[3] = new File("log.10027c6dc");
    files[4] = new File("log.20027c6dc");

    File[] orig = files.clone();

    File[] filelist =
            FileTxnLog.getLogFiles(files,
            Long.parseLong("10027c6de", 16));

    assertEquals(3, filelist.length);
    assertEquals(orig[0], filelist[0]);
    assertEquals(orig[1], filelist[1]);
    assertEquals(orig[4], filelist[2]);
}
 
開發者ID:prodigeni,項目名稱:zookeeper.dsc,代碼行數:22,代碼來源:ZooKeeperServerTest.java

示例8: testPad

import org.apache.zookeeper.server.persistence.FileTxnLog; //導入依賴的package包/類
/**
 * Simulates ZOOKEEPER-1069 and verifies that flush() before padLogFile
 * fixes it.
 */
@Test
public void testPad() throws Exception {
    File tmpDir = ClientBase.createTmpDir();
    FileTxnLog txnLog = new FileTxnLog(tmpDir);
    TxnHeader txnHeader = new TxnHeader(0xabcd, 0x123, 0x123,
          System.currentTimeMillis(), OpCode.create);
    Record txn = new CreateTxn("/Test", new byte[0], null, false);
    txnLog.append(txnHeader, txn);
    FileInputStream in = new FileInputStream(tmpDir.getPath() + "/log." +
          Long.toHexString(txnHeader.getZxid()));
    BinaryInputArchive ia  = BinaryInputArchive.getArchive(in);
    FileHeader header = new FileHeader();
    header.deserialize(ia, "fileheader");
    Assert.assertTrue("Missing magic number ",
          header.getMagic() == FileTxnLog.TXNLOG_MAGIC);
}
 
開發者ID:prodigeni,項目名稱:zookeeper.dsc,代碼行數:21,代碼來源:LoadFromLogTest.java


注:本文中的org.apache.zookeeper.server.persistence.FileTxnLog類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。