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 ED595200C01 for ; Thu, 5 Jan 2017 00:38:43 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id EC1C5160B44; Wed, 4 Jan 2017 23:38:43 +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 402A5160B3A for ; Thu, 5 Jan 2017 00:38:43 +0100 (CET) Received: (qmail 81573 invoked by uid 500); 4 Jan 2017 23:38:42 -0000 Mailing-List: contact commits-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list commits@accumulo.apache.org Received: (qmail 81564 invoked by uid 99); 4 Jan 2017 23:38:42 -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; Wed, 04 Jan 2017 23:38:42 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 3C38BDF9FC; Wed, 4 Jan 2017 23:38:42 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: elserj@apache.org To: commits@accumulo.apache.org Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: accumulo git commit: ACCUMULO-4554 Fail gracefully on unrecognized version Date: Wed, 4 Jan 2017 23:38:42 +0000 (UTC) archived-at: Wed, 04 Jan 2017 23:38:44 -0000 Repository: accumulo Updated Branches: refs/heads/master e88cb6288 -> 1474e1cfe ACCUMULO-4554 Fail gracefully on unrecognized version Change-Id: I6bc961816ffe23bfd82c34cdaf450791ecc303bf Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/1474e1cf Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/1474e1cf Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/1474e1cf Branch: refs/heads/master Commit: 1474e1cfe3da167ba88021ae50fc0d57b164bde0 Parents: e88cb62 Author: Josh Elser Authored: Wed Jan 4 18:18:09 2017 -0500 Committer: Josh Elser Committed: Wed Jan 4 18:18:40 2017 -0500 ---------------------------------------------------------------------- .../main/java/org/apache/accumulo/core/util/Version.java | 9 +++++++-- .../java/org/apache/accumulo/core/util/TestVersion.java | 11 ++++++----- 2 files changed, 13 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/1474e1cf/core/src/main/java/org/apache/accumulo/core/util/Version.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/accumulo/core/util/Version.java b/core/src/main/java/org/apache/accumulo/core/util/Version.java index 127b635..a2e900a 100644 --- a/core/src/main/java/org/apache/accumulo/core/util/Version.java +++ b/core/src/main/java/org/apache/accumulo/core/util/Version.java @@ -21,11 +21,14 @@ import java.util.regex.Pattern; import org.apache.accumulo.start.Main; import org.apache.accumulo.start.spi.KeywordExecutable; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import com.google.auto.service.AutoService; @AutoService(KeywordExecutable.class) public class Version implements KeywordExecutable { + private static final Logger log = LoggerFactory.getLogger(Version.class); public Version() {} @@ -58,8 +61,10 @@ public class Version implements KeywordExecutable { private void parse(String everything) { Pattern pattern = Pattern.compile("(([^-]*)-)?(\\d+)(\\.(\\d+)(\\.(\\d+))?)?(-(.*))?"); Matcher parser = pattern.matcher(everything); - if (!parser.matches()) - throw new IllegalArgumentException("Unable to parse: " + everything + " as a version"); + if (!parser.matches()) { + log.warn("Unable to parse '{}' as a version", everything); + return; + } if (parser.group(1) != null) package_ = parser.group(2); http://git-wip-us.apache.org/repos/asf/accumulo/blob/1474e1cf/core/src/test/java/org/apache/accumulo/core/util/TestVersion.java ---------------------------------------------------------------------- diff --git a/core/src/test/java/org/apache/accumulo/core/util/TestVersion.java b/core/src/test/java/org/apache/accumulo/core/util/TestVersion.java index af3f391..476c06f 100644 --- a/core/src/test/java/org/apache/accumulo/core/util/TestVersion.java +++ b/core/src/test/java/org/apache/accumulo/core/util/TestVersion.java @@ -55,10 +55,11 @@ public class TestVersion extends TestCase { assertTrue(v.getReleaseVersion() == 0); assertTrue(v.getEtcetera().equals("beta")); - try { - make("beta"); - fail("Should have thrown an error"); - } catch (IllegalArgumentException t) {} + v = make("beta"); + assertTrue(v.getPackage() == null); + assertTrue(v.getMajorVersion() == 0); + assertTrue(v.getMinorVersion() == 0); + assertTrue(v.getReleaseVersion() == 0); + assertTrue(v.getEtcetera() == null); } - }