Repository: tajo Updated Branches: refs/heads/master 821fc172b -> ce4423436
TAJO-1753: GlobalEngine causes NPE occurs occasionally. Closes #882 Project: http://git-wip-us.apache.org/repos/asf/tajo/repo Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/ce442343 Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/ce442343 Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/ce442343 Branch: refs/heads/master Commit: ce44234365c585c1f1444aa2b00aaf12e96de229 Parents: 821fc17 Author: Jinho Kim <[email protected]> Authored: Mon Nov 30 16:21:32 2015 +0900 Committer: Jinho Kim <[email protected]> Committed: Mon Nov 30 16:21:32 2015 +0900 ---------------------------------------------------------------------- CHANGES | 2 ++ .../src/main/java/org/apache/tajo/master/GlobalEngine.java | 9 +++++---- .../src/main/java/org/apache/tajo/master/TajoMaster.java | 4 ++-- 3 files changed, 9 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/ce442343/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index 838ab65..6ee3db4 100644 --- a/CHANGES +++ b/CHANGES @@ -46,6 +46,8 @@ Release 0.12.0 - unreleased BUG FIXES + TAJO-1753: GlobalEngine causes NPE occurs occasionally. (jinho) + TAJO-1862: TSQL gives user wrong URL of documentation. (Contributed by Dongkyu Hwangbo, committed by hyunsik) http://git-wip-us.apache.org/repos/asf/tajo/blob/ce442343/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java b/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java index 1966244..7f18fd4 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java @@ -36,13 +36,13 @@ import org.apache.tajo.catalog.CatalogService; import org.apache.tajo.catalog.Schema; import org.apache.tajo.catalog.TableDesc; import org.apache.tajo.conf.TajoConf; -import org.apache.tajo.parser.sql.SQLAnalyzer; import org.apache.tajo.engine.query.QueryContext; import org.apache.tajo.exception.*; import org.apache.tajo.master.TajoMaster.MasterContext; import org.apache.tajo.master.exec.DDLExecutor; import org.apache.tajo.master.exec.QueryExecutor; import org.apache.tajo.metrics.Master; +import org.apache.tajo.parser.sql.SQLAnalyzer; import org.apache.tajo.plan.LogicalOptimizer; import org.apache.tajo.plan.LogicalPlan; import org.apache.tajo.plan.LogicalPlanner; @@ -54,6 +54,7 @@ import org.apache.tajo.plan.verifier.*; import org.apache.tajo.session.Session; import org.apache.tajo.storage.TablespaceManager; import org.apache.tajo.util.CommonTestingUtil; +import org.apache.tajo.util.metrics.TajoSystemMetrics; import java.sql.SQLException; import java.util.concurrent.ExecutionException; @@ -176,9 +177,9 @@ public class GlobalEngine extends AbstractService { LOG.info("Query: " + query); QueryContext queryContext = createQueryContext(session); Expr planningContext; - + TajoSystemMetrics metrics = context.getMetrics(); try { - context.getMetrics().counter(Master.Query.SUBMITTED).inc(); + if(metrics != null) metrics.counter(Master.Query.SUBMITTED).inc(); if (isJson) { planningContext = buildExpressionFromJson(query); @@ -195,7 +196,7 @@ public class GlobalEngine extends AbstractService { } catch (Throwable t) { ExceptionUtil.printStackTraceIfError(LOG, t); - context.getMetrics().counter(Master.Query.ERROR).inc(); + if(metrics != null) metrics.counter(Master.Query.ERROR).inc(); SubmitQueryResponse.Builder responseBuilder = SubmitQueryResponse.newBuilder(); responseBuilder.setUserName(queryContext.get(SessionVars.USERNAME)); http://git-wip-us.apache.org/repos/asf/tajo/blob/ce442343/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java b/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java index a8a84fe..a74573e 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java @@ -203,7 +203,7 @@ public class TajoMaster extends CompositeService { addIfService(restServer); PythonScriptEngine.initPythonScriptEngineFiles(); - + // Try to start up all services in TajoMaster. // If anyone is failed, the master prints out the errors and immediately should shutdowns try { @@ -322,6 +322,7 @@ public class TajoMaster extends CompositeService { checkBaseTBSpaceAndDatabase(); super.serviceStart(); + initSystemMetrics(); // Setting the system global configs systemConf.setSocketAddr(ConfVars.CATALOG_ADDRESS.varname, @@ -334,7 +335,6 @@ public class TajoMaster extends CompositeService { } initWebServer(); - initSystemMetrics(); haService = ServiceTrackerFactory.get(systemConf); haService.register();
