You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by ry...@apache.org on 2013/12/05 01:45:07 UTC
svn commit: r1547979 - in /oozie/trunk:
core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java
release-log.txt
sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java
Author: ryota
Date: Thu Dec 5 00:45:07 2013
New Revision: 1547979
URL: http://svn.apache.org/r1547979
Log:
OOZIE-1630 <prepare> operations fail when path doesn't have scheme (ryota)
Modified:
oozie/trunk/core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java
oozie/trunk/release-log.txt
oozie/trunk/sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java
Modified: oozie/trunk/core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java
URL: http://svn.apache.org/viewvc/oozie/trunk/core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java?rev=1547979&r1=1547978&r2=1547979&view=diff
==============================================================================
--- oozie/trunk/core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java (original)
+++ oozie/trunk/core/src/test/java/org/apache/oozie/action/hadoop/TestFSPrepareActions.java Thu Dec 5 00:45:07 2013
@@ -139,31 +139,23 @@ public class TestFSPrepareActions extend
// Test for null scheme value in the path for action
@Test
public void testForNullScheme() throws Exception {
+ Path actionDir = getFsTestCaseDir();
+ Path newDir = new Path(actionDir, "newDir");
// Construct a path without scheme
- Path newDir = new Path("test/oozietests/testDelete/delete");
+ String noSchemePath = newDir.toUri().getPath();
FileSystem fs = getFileSystem();
// Delete the file if it is already there
if (fs.exists(newDir)) {
fs.delete(newDir, true);
}
// Construct prepare XML block with the path
- String prepareXML = "<prepare>" + "<delete path='" + newDir + "'/>" + "</prepare>";
+ String prepareXML = "<prepare>" + "<mkdir path='" + noSchemePath + "'/>" + "</prepare>";
- // Parse the XML to get the node
- Document doc = PrepareActionsDriver.getDocumentFromXML(prepareXML);
- Node n = doc.getDocumentElement().getChildNodes().item(0);
+ JobConf conf = createJobConf();
+ LauncherMapperHelper.setupLauncherURIHandlerConf(conf);
+ PrepareActionsDriver.doOperations(prepareXML, conf);
- try {
- JobConf conf = createJobConf();
- LauncherMapperHelper.setupLauncherURIHandlerConf(conf);
- PrepareActionsDriver.doOperations(prepareXML, conf);
- fail("Expected to catch an exception but did not encounter any");
- } catch (LauncherException le) {
- Path path = new Path(n.getAttributes().getNamedItem("path").getNodeValue().trim());
- assertEquals("Scheme not present in uri " + path, le.getMessage());
- } catch(Exception ex) {
- fail("Expected a LauncherException but received an Exception");
- }
+ assertTrue(fs.exists(new Path(noSchemePath)));
}
}
Modified: oozie/trunk/release-log.txt
URL: http://svn.apache.org/viewvc/oozie/trunk/release-log.txt?rev=1547979&r1=1547978&r2=1547979&view=diff
==============================================================================
--- oozie/trunk/release-log.txt (original)
+++ oozie/trunk/release-log.txt Thu Dec 5 00:45:07 2013
@@ -83,6 +83,7 @@ OOZIE-1440 Build fails in certain enviro
-- Oozie 4.0.1 release (unreleased)
+OOZIE-1630 <prepare> operations fail when path doesn't have scheme (ryota)
OOZIE-1627 Rerun doesn't resolve workflow app name (puru via rohini)
OOZIE-1626 pig action pop-up is not working properly in UI (ryota)
OOZIE-1607 [Doc]Update workflow specification for chgrp command (puru via rohini)
Modified: oozie/trunk/sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java
URL: http://svn.apache.org/viewvc/oozie/trunk/sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java?rev=1547979&r1=1547978&r2=1547979&view=diff
==============================================================================
--- oozie/trunk/sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java (original)
+++ oozie/trunk/sharelib/oozie/src/main/java/org/apache/oozie/action/hadoop/LauncherURIHandlerFactory.java Thu Dec 5 00:45:07 2013
@@ -37,8 +37,9 @@ public class LauncherURIHandlerFactory {
* @throws LauncherException
*/
public LauncherURIHandler getURIHandler(URI uri) throws LauncherException {
+ LauncherURIHandler handler;
if (uri.getScheme() == null) {
- throw new LauncherException("Scheme not present in uri " + uri);
+ handler = new FSLauncherURIHandler();
}
else {
String className = conf.get(CONF_LAUNCHER_URIHANDLER_SCHEME_PREFIX + uri.getScheme());
@@ -55,8 +56,9 @@ public class LauncherURIHandlerFactory {
catch (ClassNotFoundException e) {
throw new LauncherException("Error instantiating LauncherURIHandler", e);
}
- return (LauncherURIHandler) ReflectionUtils.newInstance(clazz, null);
+ handler = (LauncherURIHandler) ReflectionUtils.newInstance(clazz, null);
}
+ return handler;
}
}