Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id A86B6200CD7 for ; Tue, 18 Jul 2017 06:13:01 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 9F800162932; Tue, 18 Jul 2017 04:13:01 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id E3FB616281F for ; Tue, 18 Jul 2017 06:13:00 +0200 (CEST) Received: (qmail 74996 invoked by uid 500); 18 Jul 2017 04:12:59 -0000 Mailing-List: contact common-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list common-commits@hadoop.apache.org Received: (qmail 74981 invoked by uid 99); 18 Jul 2017 04:12:59 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 18 Jul 2017 04:12:59 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 10DD6E024D; Tue, 18 Jul 2017 04:12:58 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: wwei@apache.org To: common-commits@hadoop.apache.org Message-Id: <0e82458c384e49e59600d00c15ee226d@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: hadoop git commit: HDFS-11996. Ozone : add an UT to test partial read of chunks. Contributed by Chen Liang. Date: Tue, 18 Jul 2017 04:12:58 +0000 (UTC) archived-at: Tue, 18 Jul 2017 04:13:01 -0000 Repository: hadoop Updated Branches: refs/heads/HDFS-7240 e0687dde4 -> 0981119eb HDFS-11996. Ozone : add an UT to test partial read of chunks. Contributed by Chen Liang. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/0981119e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/0981119e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/0981119e Branch: refs/heads/HDFS-7240 Commit: 0981119eb3d9337bb7b72a94dd7903fd0d1f1972 Parents: e0687dd Author: Weiwei Yang Authored: Tue Jul 18 12:12:20 2017 +0800 Committer: Weiwei Yang Committed: Tue Jul 18 12:12:20 2017 +0800 ---------------------------------------------------------------------- .../common/impl/TestContainerPersistence.java | 38 ++++++++++++++++++++ 1 file changed, 38 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/0981119e/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/ozone/container/common/impl/TestContainerPersistence.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/ozone/container/common/impl/TestContainerPersistence.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/ozone/container/common/impl/TestContainerPersistence.java index 7a23b87..b33ee86 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/ozone/container/common/impl/TestContainerPersistence.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/ozone/container/common/impl/TestContainerPersistence.java @@ -57,6 +57,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; +import java.util.Arrays; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -72,6 +73,8 @@ import static org.apache.hadoop.ozone.container.ContainerTestHelper.getChunk; import static org.apache.hadoop.ozone.container.ContainerTestHelper.getData; import static org.apache.hadoop.ozone.container.ContainerTestHelper .setDataChecksum; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; /** @@ -455,6 +458,41 @@ public class TestContainerPersistence { } /** + * Test partial within a single chunk. + * + * @throws IOException + */ + @Test + public void testPartialRead() throws Exception { + final int datalen = 1024; + final int start = datalen/4; + final int length = datalen/2; + + String containerName = OzoneUtils.getRequestID(); + String keyName = OzoneUtils.getRequestID(); + Pipeline pipeline = createSingleNodePipeline(containerName); + + pipeline.setContainerName(containerName); + ContainerData cData = new ContainerData(containerName); + cData.addMetadata("VOLUME", "shire"); + cData.addMetadata("owner)", "bilbo"); + containerManager.createContainer(pipeline, cData); + ChunkInfo info = getChunk(keyName, 0, 0, datalen); + byte[] data = getData(datalen); + setDataChecksum(info, data); + chunkManager.writeChunk(pipeline, keyName, info, data); + + byte[] readData = chunkManager.readChunk(pipeline, keyName, info); + assertTrue(Arrays.equals(data, readData)); + + ChunkInfo info2 = getChunk(keyName, 0, start, length); + byte[] readData2 = chunkManager.readChunk(pipeline, keyName, info2); + assertEquals(length, readData2.length); + assertTrue(Arrays.equals( + Arrays.copyOfRange(data, start, start + length), readData2)); + } + + /** * Writes a single chunk and tries to overwrite that chunk without over write * flag then re-tries with overwrite flag. * --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org For additional commands, e-mail: common-commits-help@hadoop.apache.org