Forráskód Böngészése

HADOOP-13976. Path globbing does not match newlines. Contributed by Eric Badger.

Kihwal Lee 8 éve
szülő
commit
706d630eb9

+ 1 - 1
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/GlobPattern.java

@@ -153,7 +153,7 @@ public class GlobPattern {
     if (curlyOpen > 0) {
       error("Unclosed group", glob, len);
     }
-    compiled = Pattern.compile(regex.toString());
+    compiled = Pattern.compile(regex.toString(), Pattern.DOTALL);
   }
 
   /**

+ 4 - 4
hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestGlobPattern.java

@@ -50,11 +50,11 @@ public class TestGlobPattern {
   }
 
   @Test public void testValidPatterns() {
-    assertMatch(true, "*", "^$", "foo", "bar");
+    assertMatch(true, "*", "^$", "foo", "bar", "\n");
     assertMatch(true, "?", "?", "^", "[", "]", "$");
-    assertMatch(true, "foo*", "foo", "food", "fool");
-    assertMatch(true, "f*d", "fud", "food");
-    assertMatch(true, "*d", "good", "bad");
+    assertMatch(true, "foo*", "foo", "food", "fool", "foo\n", "foo\nbar");
+    assertMatch(true, "f*d", "fud", "food", "foo\nd");
+    assertMatch(true, "*d", "good", "bad", "\nd");
     assertMatch(true, "\\*\\?\\[\\{\\\\", "*?[{\\");
     assertMatch(true, "[]^-]", "]", "-", "^");
     assertMatch(true, "]", "]");