Return-Path: X-Original-To: apmail-hadoop-hdfs-commits-archive@minotaur.apache.org Delivered-To: apmail-hadoop-hdfs-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0AEF711662 for ; Tue, 13 May 2014 07:35:03 +0000 (UTC) Received: (qmail 99577 invoked by uid 500); 13 May 2014 07:35:02 -0000 Delivered-To: apmail-hadoop-hdfs-commits-archive@hadoop.apache.org Received: (qmail 99518 invoked by uid 500); 13 May 2014 07:35:02 -0000 Mailing-List: contact hdfs-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hdfs-dev@hadoop.apache.org Delivered-To: mailing list hdfs-commits@hadoop.apache.org Received: (qmail 99510 invoked by uid 99); 13 May 2014 07:35:02 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 13 May 2014 07:35:02 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 13 May 2014 07:35:02 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 367C92388860; Tue, 13 May 2014 07:34:33 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1594150 - in /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs: CHANGES.txt src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java Date: Tue, 13 May 2014 07:34:33 -0000 To: hdfs-commits@hadoop.apache.org From: umamahesh@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20140513073433.367C92388860@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: umamahesh Date: Tue May 13 07:34:32 2014 New Revision: 1594150 URL: http://svn.apache.org/r1594150 Log: HDFS-6367. EnumSetParam$Domain#parse fails for parameter containing more than one enum. Contributed by Yi Liu. Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1594150&r1=1594149&r2=1594150&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Tue May 13 07:34:32 2014 @@ -455,6 +455,9 @@ Release 2.5.0 - UNRELEASED HDFS-5522. Datanode disk error check may be incorrectly skipped. (Rushabh S Shah via kihwal) + HDFS-6367. EnumSetParam$Domain#parse fails for parameter containing more than one enum. + (Yi Liu via umamahesh) + Release 2.4.1 - UNRELEASED INCOMPATIBLE CHANGES Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java?rev=1594150&r1=1594149&r2=1594150&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/resources/EnumSetParam.java Tue May 13 07:34:32 2014 @@ -79,8 +79,8 @@ abstract class EnumSetParam set = EnumSet.noneOf(enumClass); if (!str.isEmpty()) { for(int i, j = 0; j >= 0; ) { - i = j; - j = str.indexOf(',', i+1); + i = j > 0 ? j + 1 : 0; + j = str.indexOf(',', i); final String sub = j >= 0? str.substring(i, j): str.substring(i); set.add(Enum.valueOf(enumClass, sub.trim().toUpperCase())); } Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java?rev=1594150&r1=1594149&r2=1594150&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/resources/TestParam.java Tue May 13 07:34:32 2014 @@ -21,12 +21,14 @@ import static org.junit.Assert.assertNot import static org.junit.Assert.assertNull; import java.util.Arrays; +import java.util.EnumSet; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.CommonConfigurationKeysPublic; +import org.apache.hadoop.fs.Options; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.permission.AclEntry; import org.apache.hadoop.fs.permission.FsPermission; @@ -346,4 +348,13 @@ public class TestParam { } } + @Test + public void testRenameOptionSetParam() { + final RenameOptionSetParam p = new RenameOptionSetParam( + Options.Rename.OVERWRITE, Options.Rename.NONE); + final RenameOptionSetParam p1 = new RenameOptionSetParam( + p.getValueString()); + Assert.assertEquals(p1.getValue(), EnumSet.of( + Options.Rename.OVERWRITE, Options.Rename.NONE)); + } }