OOZIE-2739 Remove property expansion pattern from ShellMain's log4j properties 
content (harsh)


Project: http://git-wip-us.apache.org/repos/asf/oozie/repo
Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/1392eeaf
Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/1392eeaf
Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/1392eeaf

Branch: refs/heads/oya
Commit: 1392eeaf8397a6c6814607cf61cb962403df1447
Parents: 3601e5b
Author: Harsh J <ha...@cloudera.com>
Authored: Fri Mar 24 18:03:47 2017 +0530
Committer: Harsh J <ha...@cloudera.com>
Committed: Fri Mar 24 18:03:47 2017 +0530

----------------------------------------------------------------------
 core/src/main/resources/oozie-default.xml         |  3 +--
 .../action/hadoop/TestShellActionExecutor.java    | 18 ++++++++++++++----
 release-log.txt                                   |  1 +
 3 files changed, 16 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/oozie/blob/1392eeaf/core/src/main/resources/oozie-default.xml
----------------------------------------------------------------------
diff --git a/core/src/main/resources/oozie-default.xml 
b/core/src/main/resources/oozie-default.xml
index 03f428a..c2e6ec2 100644
--- a/core/src/main/resources/oozie-default.xml
+++ b/core/src/main/resources/oozie-default.xml
@@ -1882,8 +1882,7 @@ will be the requeue interval for the actions which are 
waiting for a long time w
     <property>
         <name>oozie.action.shell.setup.hadoop.conf.dir.log4j.content</name>
         <value>
-            log4j.rootLogger=${hadoop.root.logger}
-            hadoop.root.logger=INFO,console
+            log4j.rootLogger=INFO,console
             log4j.appender.console=org.apache.log4j.ConsoleAppender
             log4j.appender.console.target=System.err
             log4j.appender.console.layout=org.apache.log4j.PatternLayout

http://git-wip-us.apache.org/repos/asf/oozie/blob/1392eeaf/core/src/test/java/org/apache/oozie/action/hadoop/TestShellActionExecutor.java
----------------------------------------------------------------------
diff --git 
a/core/src/test/java/org/apache/oozie/action/hadoop/TestShellActionExecutor.java
 
b/core/src/test/java/org/apache/oozie/action/hadoop/TestShellActionExecutor.java
index 1531ed9..f12927b 100644
--- 
a/core/src/test/java/org/apache/oozie/action/hadoop/TestShellActionExecutor.java
+++ 
b/core/src/test/java/org/apache/oozie/action/hadoop/TestShellActionExecutor.java
@@ -69,9 +69,15 @@ public class TestShellActionExecutor extends 
ActionExecutorTestCase {
             ? "IF EXIST %HADOOP_CONF_DIR%\\log4j.properties echo 
L4J_EXISTS=yes\n"
             : "if [ -f $HADOOP_CONF_DIR/log4j.properties ]; then echo 
L4J_EXISTS=yes; fi\n";
     private static final String SHELL_SCRIPT_LOG4J_CONTENT_COUNTER = 
Shell.WINDOWS
-            ? "SET COMMAND=\"type %HADOOP_CONF_DIR%\\log4j.properties | FIND 
/c /v \"~DOESNOTMATCH~\"\"\n" +
-              "FOR /f %%i IN (' %COMMAND% ') DO SET L4J_LC=%%i\necho 
L4J_WC=%L4J_LC%\n"
-            : "echo L4J_LC=$(cat $HADOOP_CONF_DIR/log4j.properties | wc -l)\n";
+            ? "FOR /f %%i IN ('TYPE %HADOOP_CONF_DIR%\\log4j.properties " +
+              "^| FIND /c /v \"~DOESNOTMATCH~\"') DO " +
+              "SET L4J_LC=%%i\necho L4J_LC=%L4J_LC%\n" +
+              "FOR /f %%i IN ('FINDSTR \"CLA CLRA\" 
%HADOOP_CONF_DIR%\\log4j.properties " +
+              "^| FIND /c /v \"~DOESNOTMATCH~\"') DO " +
+              "SET L4J_APPENDER=%%i\necho L4J_APPENDER=%L4J_APPENDER%\n"
+            : "echo L4J_LC=$(cat $HADOOP_CONF_DIR/log4j.properties | wc -l)\n" 
+
+              "echo L4J_APPENDER=$(grep -e 'CLA' -e 'CLRA' -c " +
+              "$HADOOP_CONF_DIR/log4j.properties)\n";
 
     /**
      * Verify if the ShellActionExecutor indeed setups the basic stuffs
@@ -162,6 +168,7 @@ public class TestShellActionExecutor extends 
ActionExecutorTestCase {
         String yarnConfDir = 
PropertiesUtils.stringToProperties(action.getData()).getProperty("YARN_CONF_DIR");
         String log4jExists = 
PropertiesUtils.stringToProperties(action.getData()).getProperty("L4J_EXISTS");
         String log4jFileLineCount = 
PropertiesUtils.stringToProperties(action.getData()).getProperty("L4J_LC");
+        String log4BadAppenderCount = 
PropertiesUtils.stringToProperties(action.getData()).getProperty("L4J_APPENDER");
         assertNotNull(oozieActionConfXml);
         assertNotNull(hadoopConfDir);
         String s = new File(oozieActionConfXml).getParent() + File.separator + 
"oozie-hadoop-conf-";
@@ -172,10 +179,13 @@ public class TestShellActionExecutor extends 
ActionExecutorTestCase {
                 "Expected YARN_CONF_DIR to start with " + s + " but was " + 
yarnConfDir,
                 yarnConfDir.startsWith(s));
         Assert.assertEquals(
-                "Expected log4j.properties file to exist", log4jExists, "yes");
+                "Expected log4j.properties file to exist", "yes", log4jExists);
         Assert.assertTrue(
                 "Expected log4j.properties to have non-zero line count, but 
has: " + log4jFileLineCount,
                 Integer.parseInt(log4jFileLineCount) > 0);
+        Assert.assertEquals(
+                "Expected log4j.properties to have no container appender 
references (CLA/CLRA)",
+                0, Integer.parseInt(log4BadAppenderCount));
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/oozie/blob/1392eeaf/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index 6df9ed3..f9b926b 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -1,5 +1,6 @@
 -- Oozie 4.4.0 release (trunk - unreleased)
 
+OOZIE-2739 Remove property expansion pattern from ShellMain's log4j properties 
content (harsh)
 OOZIE-2817 amend Increase test case stability in pre-commit job (abhishekbafna)
 OOZIE-2838 TestClassUtils,TestJsonUtils,TestWritableUtils,TestXmlUtils shall 
not be an Oozie XTestCase (asasvari via pbacsko)
 OOZIE-2811 amend Add support for filtering out properties from 
SparkConfigurationService

Reply via email to