From 04fb6ee44f02ad4d21c8ea48dff96f8bce3d3c1b Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Fri, 22 Jul 2011 20:03:46 +0000 Subject: [PATCH] ShimLoader accepts 0.22.0-SNAPSHOT signature. From: Aaron Kimball git-svn-id: https://svn.apache.org/repos/asf/incubator/sqoop/trunk@1149896 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/hadoop/sqoop/shims/ShimLoader.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/java/org/apache/hadoop/sqoop/shims/ShimLoader.java b/src/java/org/apache/hadoop/sqoop/shims/ShimLoader.java index 8d99343d..d86207ae 100644 --- a/src/java/org/apache/hadoop/sqoop/shims/ShimLoader.java +++ b/src/java/org/apache/hadoop/sqoop/shims/ShimLoader.java @@ -68,16 +68,22 @@ public abstract class ShimLoader { static { // These regular expressions will be evaluated in order until one matches. - // Check + // CDH3 (based on 0.20.2) HADOOP_SHIM_MATCHES.add("0.20.2-[cC][dD][hH]3.*"); HADOOP_SHIM_CLASSES.add("org.apache.hadoop.sqoop.shims.CDH3Shim"); HADOOP_SHIM_JARS.add("sqoop-.*-cloudera.jar"); - // Apache 0.22 trunk + // Apache 0.22 trunk. + // Version may have the form "0.22-SNAPSHOT" HADOOP_SHIM_MATCHES.add("0.22-.*"); HADOOP_SHIM_CLASSES.add("org.apache.hadoop.sqoop.shims.Apache22HadoopShim"); HADOOP_SHIM_JARS.add("sqoop-.*-apache.jar"); + // ... or "0.22.n-SNAPSHOT" + HADOOP_SHIM_MATCHES.add("0.22.\\d+-.*"); + HADOOP_SHIM_CLASSES.add("org.apache.hadoop.sqoop.shims.Apache22HadoopShim"); + HADOOP_SHIM_JARS.add("sqoop-.*-apache.jar"); + // Apache 0.22 trunk snapshots often compile with "Unknown" version, // so we default to guessing Apache in this case. HADOOP_SHIM_MATCHES.add("Unknown"); @@ -133,6 +139,7 @@ private static T loadShim(List matchExprs, LOG.debug("Hadoop version: " + version); for (int i = 0; i < matchExprs.size(); i++) { + LOG.debug("Checking: " + matchExprs.get(i)); if (version.matches(matchExprs.get(i))) { String className = classNames.get(i); String jarPattern = jarPatterns.get(i);