Package org.apache.hadoop.hdfs.server.protocol

Examples of org.apache.hadoop.hdfs.server.protocol.RemoteImageManifest


    for (int i = 0; i < iterations; i++) {
      createImage(txid + i + iterations, false, false);
      // this should not be in the manifest later
    }

    RemoteImageManifest m = journal.getImageManifest(-1);
    assertEquals(expectedImages, m.getImages());

    // //// try reading images
    for (RemoteImage ri : expectedImages) {
      if (ri.getDigest() == null) {
        // download should fail
View Full Code Here


  @Test
  public void testSingleManifestSingelNode() throws IOException {
    List<RemoteImageManifest> manifests = Lists.newArrayList();
    manifests.add(createManifest(new ImageDescriptor[] { new ImageDescriptor(
        100, true) }));
    RemoteImageManifest rmOut = QuorumJournalManager.createImageManifest(
        manifests);
    assertTrue(manifests.get(0).getImages().equals(rmOut.getImages()));
  }
View Full Code Here

    List<RemoteImageManifest> manifests = Lists.newArrayList();
    // 102 should not be in the output manifes
    manifests.add(createManifest(new ImageDescriptor[] {
        new ImageDescriptor(100, true), new ImageDescriptor(101, true),
        new ImageDescriptor(102, false) }));
    RemoteImageManifest rmOut = QuorumJournalManager.createImageManifest(
        manifests);

    // only 100 and 101 should be in the final manifest
    assertEquals(100, rmOut.getImages().get(0).getTxId());
    assertEquals(101, rmOut.getImages().get(1).getTxId());
    assertEquals(2, rmOut.getImages().size());
  }
View Full Code Here

  @Test
  public void testEmpty() throws IOException {
    List<RemoteImageManifest> manifests = Lists.newArrayList();
    manifests.add(createManifest(new ImageDescriptor[] {}));

    RemoteImageManifest rmOut = QuorumJournalManager.createImageManifest(
        manifests);
    assertEquals(0, rmOut.getImages().size());
  }
View Full Code Here

    manifests.add(createManifest(new ImageDescriptor[] {
        new ImageDescriptor(100, true), new ImageDescriptor(101, true),
        new ImageDescriptor(102, true), new ImageDescriptor(103, true) }));

    RemoteImageManifest rmOut = QuorumJournalManager.createImageManifest(
        manifests);

    // the resulting manifest should have four images
    assertTrue(rmOut.getImages().size() == 4);
  }
View Full Code Here

        new ImageDescriptor(101, true), new ImageDescriptor(102, true) }));

    manifests.add(createManifest(new ImageDescriptor[] {
        new ImageDescriptor(100, true), new ImageDescriptor(102, true) }));

    RemoteImageManifest rmOut = QuorumJournalManager.createImageManifest(
        manifests);

    assertEquals(3, rmOut.getImages().size());
    // should be sorted
    for (int i = 0; i < 3; i++) {
      assertEquals(100 + i, rmOut.getImages().get(i).getTxId());
    }
  }
View Full Code Here

    List<RemoteImage> res = Lists.newArrayList();
    for (ImageDescriptor id : descriptors) {
      res.add(createRemoteImage(id.txid, id.hasMd5));
    }
    Collections.sort(res);
    return new RemoteImageManifest(res);
  }
View Full Code Here

      boolean skipPartial) throws IOException {
    if (!skipPartial) {
      for (int i = 0; i < cluster.getNumNodes(); i++) {
        JournalNode jn = cluster.getJournalNodes()[i];

        RemoteImageManifest rim = jn.getJournal(JID.getBytes())
            .getImageManifest(-1);
        assertEquals(iteration + 1, rim.getImages().size());
        for (int j = 0; j <= iteration; j++) {
          assertEquals(startTxId + j, rim.getImages().get(j).getTxId());
        }
      }
    }

    // get manifest through qjm
    RemoteImageManifest rm = qjm.getImageManifest(-1);
    for (int j = 0; j <= iteration; j++) {
      assertEquals(startTxId + j, rm.getImages().get(j).getTxId());
    }

    assertEquals(startTxId + iteration, qjm.getLatestImage()
        .getCheckpointTxId());
  }
View Full Code Here

      result.add(ri);
    }
    // we need to sort the images
    Collections.sort(result);

    return new RemoteImageManifest(result);
  }
View Full Code Here

    return executor.submit(new Callable<RemoteImageManifest>() {
      @Override
      public RemoteImageManifest call() throws IOException {
        GetImageManifestResponseProto ret = getProxy().getImageManifest(
            journalIdBytes, fromTxnId);
        return new RemoteImageManifest(ret.getImages());
      }
    });
  }
View Full Code Here

TOP

Related Classes of org.apache.hadoop.hdfs.server.protocol.RemoteImageManifest

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.