Java 类org.apache.hadoop.hbase.io.hfile.HFileBlockIndex.BlockIndexChunk 实例源码

项目:LCIndex-HBase-0.94.16    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:pbase    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:HIndex    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:IRIndex    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:hbase    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = RandomKeyValueUtil.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:PyroDB    文件:TestHFileBlockIndex.java   
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:c5    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:HBase-Research    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:hbase-0.94.8-qod    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:hbase-0.94.8-qod    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:DominoHBase    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}
项目:hindex    文件:TestHFileBlockIndex.java   
@Test
public void testBlockIndexChunk() throws IOException {
  BlockIndexChunk c = new BlockIndexChunk();
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  int N = 1000;
  int[] numSubEntriesAt = new int[N];
  int numSubEntries = 0;
  for (int i = 0; i < N; ++i) {
    baos.reset();
    DataOutputStream dos = new DataOutputStream(baos);
    c.writeNonRoot(dos);
    assertEquals(c.getNonRootSize(), dos.size());

    baos.reset();
    dos = new DataOutputStream(baos);
    c.writeRoot(dos);
    assertEquals(c.getRootSize(), dos.size());

    byte[] k = TestHFileWriterV2.randomOrderedKey(rand, i);
    numSubEntries += rand.nextInt(5) + 1;
    keys.add(k);
    c.add(k, getDummyFileOffset(i), getDummyOnDiskSize(i), numSubEntries);
  }

  // Test the ability to look up the entry that contains a particular
  // deeper-level index block's entry ("sub-entry"), assuming a global
  // 0-based ordering of sub-entries. This is needed for mid-key calculation.
  for (int i = 0; i < N; ++i) {
    for (int j = i == 0 ? 0 : numSubEntriesAt[i - 1];
         j < numSubEntriesAt[i];
         ++j) {
      assertEquals(i, c.getEntryBySubEntry(j));
    }
  }
}