Repository: oozie Updated Branches: refs/heads/master fd3ae27da -> 1dabb80b1
OOZIE-2438 Oozie client jobs -filter diagnostic message clarification Project: http://git-wip-us.apache.org/repos/asf/oozie/repo Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/1dabb80b Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/1dabb80b Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/1dabb80b Branch: refs/heads/master Commit: 1dabb80b148dc9ff24bd931f1ac4ee8396e56475 Parents: fd3ae27 Author: Purshotam Shah <[email protected]> Authored: Mon Jan 25 12:02:54 2016 -0800 Committer: Purshotam Shah <[email protected]> Committed: Mon Jan 25 12:02:54 2016 -0800 ---------------------------------------------------------------------- .../java/org/apache/oozie/BundleEngine.java | 24 ++++----- .../org/apache/oozie/CoordinatorEngine.java | 42 ++++++++-------- .../main/java/org/apache/oozie/DagEngine.java | 51 ++++++++++---------- .../org/apache/oozie/servlet/SLAServlet.java | 4 +- .../org/apache/oozie/util/JobsFilterUtils.java | 20 ++++---- release-log.txt | 1 + 6 files changed, 72 insertions(+), 70 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/core/src/main/java/org/apache/oozie/BundleEngine.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/BundleEngine.java b/core/src/main/java/org/apache/oozie/BundleEngine.java index 4f0f3bf..d0099b4 100644 --- a/core/src/main/java/org/apache/oozie/BundleEngine.java +++ b/core/src/main/java/org/apache/oozie/BundleEngine.java @@ -28,17 +28,16 @@ import java.util.List; import java.util.Map; import java.util.StringTokenizer; +import javax.servlet.ServletException; + import org.apache.hadoop.conf.Configuration; -import org.apache.oozie.BaseEngine.LOG_TYPE; import org.apache.oozie.client.CoordinatorAction; import org.apache.oozie.client.CoordinatorJob; import org.apache.oozie.client.WorkflowJob; import org.apache.oozie.client.rest.BulkResponseImpl; import org.apache.oozie.command.BulkJobsXCommand; import org.apache.oozie.command.CommandException; -import org.apache.oozie.command.bundle.BundleSLAAlertsDisableXCommand; -import org.apache.oozie.command.bundle.BundleSLAAlertsEnableXCommand; -import org.apache.oozie.command.bundle.BundleSLAChangeXCommand; +import org.apache.oozie.command.OperationType; import org.apache.oozie.command.bundle.BulkBundleXCommand; import org.apache.oozie.command.bundle.BundleJobChangeXCommand; import org.apache.oozie.command.bundle.BundleJobResumeXCommand; @@ -47,25 +46,25 @@ import org.apache.oozie.command.bundle.BundleJobXCommand; import org.apache.oozie.command.bundle.BundleJobsXCommand; import org.apache.oozie.command.bundle.BundleKillXCommand; import org.apache.oozie.command.bundle.BundleRerunXCommand; +import org.apache.oozie.command.bundle.BundleSLAAlertsDisableXCommand; +import org.apache.oozie.command.bundle.BundleSLAAlertsEnableXCommand; +import org.apache.oozie.command.bundle.BundleSLAChangeXCommand; import org.apache.oozie.command.bundle.BundleStartXCommand; import org.apache.oozie.command.bundle.BundleSubmitXCommand; -import org.apache.oozie.command.OperationType; import org.apache.oozie.executor.jpa.BundleJobQueryExecutor; import org.apache.oozie.executor.jpa.JPAExecutorException; import org.apache.oozie.service.DagXLogInfoService; import org.apache.oozie.util.DateUtils; -import org.apache.oozie.util.JobsFilterUtils; import org.apache.oozie.util.JobUtils; +import org.apache.oozie.util.JobsFilterUtils; +import org.apache.oozie.util.ParamChecker; +import org.apache.oozie.util.XLog; import org.apache.oozie.util.XLogAuditFilter; import org.apache.oozie.util.XLogFilter; import org.apache.oozie.util.XLogUserFilterParam; -import org.apache.oozie.util.ParamChecker; -import org.apache.oozie.util.XLog; import com.google.common.annotations.VisibleForTesting; -import javax.servlet.ServletException; - public class BundleEngine extends BaseEngine { /** * Create a system Bundle engine, with no user and no group. @@ -408,7 +407,7 @@ public class BundleEngine extends BaseEngine { String[] pair = token.split("="); if (pair.length != 2) { throw new BundleEngineException(ErrorCode.E0420, token, - "elements must be name=value pairs"); + "elements must be semicolon-separated name=value pairs"); } pair[0] = pair[0].toLowerCase(); String[] values = pair[1].split(","); @@ -454,7 +453,8 @@ public class BundleEngine extends BaseEngine { list.add(value); } } else { - throw new BundleEngineException(ErrorCode.E0420, token, "elements must be name=value pairs"); + throw new BundleEngineException(ErrorCode.E0420, token, + "elements must be semicolon-separated name=value pairs"); } } if (!bulkFilter.containsKey(BulkResponseImpl.BULK_FILTER_BUNDLE)) { http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/core/src/main/java/org/apache/oozie/CoordinatorEngine.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/CoordinatorEngine.java b/core/src/main/java/org/apache/oozie/CoordinatorEngine.java index 482d6a9..79d0d97 100644 --- a/core/src/main/java/org/apache/oozie/CoordinatorEngine.java +++ b/core/src/main/java/org/apache/oozie/CoordinatorEngine.java @@ -18,17 +18,32 @@ package org.apache.oozie; -import com.google.common.annotations.VisibleForTesting; +import java.io.IOException; +import java.io.Writer; +import java.sql.Timestamp; +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.StringTokenizer; import org.apache.commons.lang.StringUtils; import org.apache.hadoop.conf.Configuration; -import org.apache.oozie.BaseEngine.LOG_TYPE; import org.apache.oozie.client.CoordinatorAction; import org.apache.oozie.client.CoordinatorJob; import org.apache.oozie.client.OozieClient; import org.apache.oozie.client.WorkflowJob; import org.apache.oozie.client.rest.RestConstants; import org.apache.oozie.command.CommandException; +import org.apache.oozie.command.OperationType; import org.apache.oozie.command.coord.BulkCoordXCommand; import org.apache.oozie.command.coord.CoordActionInfoXCommand; import org.apache.oozie.command.coord.CoordActionsIgnoreXCommand; @@ -45,7 +60,6 @@ import org.apache.oozie.command.coord.CoordSLAChangeXCommand; import org.apache.oozie.command.coord.CoordSubmitXCommand; import org.apache.oozie.command.coord.CoordSuspendXCommand; import org.apache.oozie.command.coord.CoordUpdateXCommand; -import org.apache.oozie.command.OperationType; import org.apache.oozie.executor.jpa.CoordActionQueryExecutor; import org.apache.oozie.executor.jpa.CoordJobQueryExecutor; import org.apache.oozie.executor.jpa.JPAExecutorException; @@ -64,22 +78,7 @@ import org.apache.oozie.util.XLogAuditFilter; import org.apache.oozie.util.XLogFilter; import org.apache.oozie.util.XLogUserFilterParam; -import java.io.IOException; -import java.io.Writer; -import java.sql.Timestamp; -import java.text.ParseException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.StringTokenizer; +import com.google.common.annotations.VisibleForTesting; public class CoordinatorEngine extends BaseEngine { private static final XLog LOG = XLog.getLog(CoordinatorEngine.class); @@ -720,7 +719,7 @@ public class CoordinatorEngine extends BaseEngine { String[] pair = token.split("="); if (pair.length != 2) { throw new CoordinatorEngineException(ErrorCode.E0420, filter, - "elements must be name=value pairs"); + "elements must be semicolon-separated name=value pairs"); } if (!FILTER_NAMES.contains(pair[0].toLowerCase())) { throw new CoordinatorEngineException(ErrorCode.E0420, filter, XLog.format("invalid name [{0}]", @@ -764,7 +763,8 @@ public class CoordinatorEngine extends BaseEngine { } list.add(pair[1]); } else { - throw new CoordinatorEngineException(ErrorCode.E0420, filter, "elements must be name=value pairs"); + throw new CoordinatorEngineException(ErrorCode.E0420, filter, + "elements must be semicolon-separated name=value pairs"); } } // Unit is specified and frequency is not specified http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/core/src/main/java/org/apache/oozie/DagEngine.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/DagEngine.java b/core/src/main/java/org/apache/oozie/DagEngine.java index 9061d17..fd83360 100644 --- a/core/src/main/java/org/apache/oozie/DagEngine.java +++ b/core/src/main/java/org/apache/oozie/DagEngine.java @@ -18,13 +18,26 @@ package org.apache.oozie; -import org.apache.oozie.service.XLogService; -import org.apache.oozie.service.DagXLogInfoService; +import java.io.IOException; +import java.io.StringReader; +import java.io.Writer; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Properties; +import java.util.Set; +import java.util.StringTokenizer; + import org.apache.hadoop.conf.Configuration; import org.apache.oozie.client.CoordinatorJob; -import org.apache.oozie.client.WorkflowJob; import org.apache.oozie.client.OozieClient; +import org.apache.oozie.client.WorkflowJob; import org.apache.oozie.command.CommandException; +import org.apache.oozie.command.OperationType; +import org.apache.oozie.command.wf.BulkWorkflowXCommand; import org.apache.oozie.command.wf.CompletedActionXCommand; import org.apache.oozie.command.wf.DefinitionXCommand; import org.apache.oozie.command.wf.ExternalIdXCommand; @@ -42,34 +55,20 @@ import org.apache.oozie.command.wf.SubmitSqoopXCommand; import org.apache.oozie.command.wf.SubmitXCommand; import org.apache.oozie.command.wf.SuspendXCommand; import org.apache.oozie.command.wf.WorkflowActionInfoXCommand; -import org.apache.oozie.command.OperationType; -import org.apache.oozie.command.wf.BulkWorkflowXCommand; import org.apache.oozie.executor.jpa.JPAExecutorException; import org.apache.oozie.executor.jpa.WorkflowJobQueryExecutor; import org.apache.oozie.executor.jpa.WorkflowJobQueryExecutor.WorkflowJobQuery; -import org.apache.oozie.service.Services; import org.apache.oozie.service.CallableQueueService; -import org.apache.oozie.util.XLogAuditFilter; -import org.apache.oozie.util.XLogFilter; -import org.apache.oozie.util.XLogUserFilterParam; +import org.apache.oozie.service.DagXLogInfoService; +import org.apache.oozie.service.Services; +import org.apache.oozie.service.XLogService; import org.apache.oozie.util.ParamChecker; import org.apache.oozie.util.XCallable; import org.apache.oozie.util.XConfiguration; import org.apache.oozie.util.XLog; -import org.apache.oozie.service.XLogStreamingService; - -import java.io.StringReader; -import java.io.Writer; -import java.util.Date; -import java.util.List; -import java.util.Properties; -import java.util.Set; -import java.util.HashSet; -import java.util.StringTokenizer; -import java.util.Map; -import java.util.HashMap; -import java.util.ArrayList; -import java.io.IOException; +import org.apache.oozie.util.XLogAuditFilter; +import org.apache.oozie.util.XLogFilter; +import org.apache.oozie.util.XLogUserFilterParam; /** * The DagEngine provides all the DAG engine functionality for WS calls. @@ -493,7 +492,8 @@ public class DagEngine extends BaseEngine { if (token.contains("=")) { String[] pair = token.split("="); if (pair.length != 2) { - throw new DagEngineException(ErrorCode.E0420, filter, "elements must be name=value pairs"); + throw new DagEngineException(ErrorCode.E0420, filter, + "elements must be semicolon-separated name=value pairs"); } pair[0] = pair[0].toLowerCase(); if (!FILTER_NAMES.contains(pair[0])) { @@ -517,7 +517,8 @@ public class DagEngine extends BaseEngine { list.add(pair[1]); } else { - throw new DagEngineException(ErrorCode.E0420, filter, "elements must be name=value pairs"); + throw new DagEngineException(ErrorCode.E0420, filter, + "elements must be semicolon-separated name=value pairs"); } } } http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/core/src/main/java/org/apache/oozie/servlet/SLAServlet.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/servlet/SLAServlet.java b/core/src/main/java/org/apache/oozie/servlet/SLAServlet.java index f897652..8fad98b 100644 --- a/core/src/main/java/org/apache/oozie/servlet/SLAServlet.java +++ b/core/src/main/java/org/apache/oozie/servlet/SLAServlet.java @@ -143,7 +143,7 @@ public class SLAServlet extends JsonRestServlet { String[] pair = token.split("="); if (pair.length != 2) { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0401, - "elements must be name=value pairs"); + "elements must be semicolon-separated name=value pairs"); } if (!allowedFilters.contains(pair[0])) { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0401, @@ -158,7 +158,7 @@ public class SLAServlet extends JsonRestServlet { } else { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0401, - "elements must be name=value pairs"); + "elements must be semicolon-separated name=value pairs"); } } } http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/core/src/main/java/org/apache/oozie/util/JobsFilterUtils.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/util/JobsFilterUtils.java b/core/src/main/java/org/apache/oozie/util/JobsFilterUtils.java index 98ac7b3..52d3e9d 100644 --- a/core/src/main/java/org/apache/oozie/util/JobsFilterUtils.java +++ b/core/src/main/java/org/apache/oozie/util/JobsFilterUtils.java @@ -17,14 +17,6 @@ */ package org.apache.oozie.util; -import org.apache.oozie.ErrorCode; -import org.apache.oozie.client.OozieClient; -import org.apache.oozie.client.Job; -import org.apache.oozie.servlet.XServletException; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; @@ -33,6 +25,14 @@ import java.util.Map; import java.util.Set; import java.util.StringTokenizer; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletResponse; + +import org.apache.oozie.ErrorCode; +import org.apache.oozie.client.Job; +import org.apache.oozie.client.OozieClient; +import org.apache.oozie.servlet.XServletException; + public class JobsFilterUtils { private static final Set<String> FILTER_NAMES = new HashSet<String>(); @@ -55,7 +55,7 @@ public class JobsFilterUtils { String[] pair = token.split("="); if (pair.length != 2) { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0420, - "filter elements must be name=value pairs"); + "filter elements must be semicolon-separated name=value pairs"); } if (!FILTER_NAMES.contains(pair[0])) { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0420, @@ -80,7 +80,7 @@ public class JobsFilterUtils { } else { throw new XServletException(HttpServletResponse.SC_BAD_REQUEST, ErrorCode.E0420, - "filter elements must be name=value pairs"); + "filter elements must be semicolon-separated name=value pairs"); } } } http://git-wip-us.apache.org/repos/asf/oozie/blob/1dabb80b/release-log.txt ---------------------------------------------------------------------- diff --git a/release-log.txt b/release-log.txt index c25a82c..7bd2ce7 100644 --- a/release-log.txt +++ b/release-log.txt @@ -1,5 +1,6 @@ -- Oozie 4.3.0 release (trunk - unreleased) +OOZIE-2438 Oozie client "jobs -filter" diagnostic message clarification (satishsaley via puru) OOZIE-2165 Job log fetching can fail in Oozie HA mode when using doAs impersonation (satishsaley via puru) OOZIE-2430 Add root logger for hive,sqoop action (satishsaley via puru) OOZIE-2441 SubWorkflow action with propagate-configuration but no global section throws NPE on submit (rkanter)
