LENS-557: Add failure reason for FAILED queries in QueryStatusLogger logger.
Project: http://git-wip-us.apache.org/repos/asf/incubator-lens/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-lens/commit/1b1d3353 Tree: http://git-wip-us.apache.org/repos/asf/incubator-lens/tree/1b1d3353 Diff: http://git-wip-us.apache.org/repos/asf/incubator-lens/diff/1b1d3353 Branch: refs/heads/current-release-line Commit: 1b1d3353414c9dc0544bb6714aa7686ea7672e07 Parents: 099d19e Author: Amareshwari Sriramadasu <[email protected]> Authored: Tue Jun 9 12:17:14 2015 +0530 Committer: Rajat Khandelwal <[email protected]> Committed: Tue Jun 9 12:17:14 2015 +0530 ---------------------------------------------------------------------- .../org/apache/lens/server/api/query/QueryEnded.java | 12 ++++++++++++ .../lens/server/query/QueryExecutionServiceImpl.java | 9 ++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/1b1d3353/lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java ---------------------------------------------------------------------- diff --git a/lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java b/lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java index 4bf43d7..3e9474c 100644 --- a/lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java +++ b/lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java @@ -23,6 +23,8 @@ import java.util.EnumSet; import org.apache.lens.api.query.QueryHandle; import org.apache.lens.api.query.QueryStatus; +import org.apache.commons.lang.StringUtils; + import lombok.Getter; /** @@ -68,4 +70,14 @@ public class QueryEnded extends StatusChange { throw new IllegalStateException("Not a valid end state: " + current + " query: " + handle); } } + + public String toString() { + StringBuilder buf = new StringBuilder(super.toString()); + if (StringUtils.isNotBlank(cause)) { + buf.append(" cause:").append(cause); + } + return buf.toString(); + } + + } http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/1b1d3353/lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java ---------------------------------------------------------------------- diff --git a/lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java b/lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java index dbc52e9..7623743 100644 --- a/lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java +++ b/lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java @@ -715,7 +715,14 @@ public class QueryExecutionServiceImpl extends LensService implements QueryExecu case CLOSED: return new QueryClosed(ctx.getClosedTime(), prevState, currState, query, ctx.getSubmittedUser(), null); case FAILED: - return new QueryFailed(ctx.getEndTime(), prevState, currState, query, ctx.getSubmittedUser(), null); + StringBuilder msgBuilder = new StringBuilder(); + msgBuilder.append(ctx.getStatus().getStatusMessage()); + if (!StringUtils.isBlank(ctx.getStatus().getErrorMessage())) { + msgBuilder.append("\n Reason:\n"); + msgBuilder.append(ctx.getStatus().getErrorMessage()); + } + return new QueryFailed(ctx.getEndTime(), prevState, currState, query, ctx.getSubmittedUser(), + msgBuilder.toString()); case LAUNCHED: return new QueryLaunched(ctx.getLaunchTime(), prevState, currState, query); case QUEUED:
