You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by jx...@apache.org on 2015/09/30 17:07:40 UTC
hive git commit: HIVE-11984: Add HS2 open operation metrics (Jimmy,
reviewed by Szehon)
Repository: hive
Updated Branches:
refs/heads/master cdaf35674 -> 1cb307336
HIVE-11984: Add HS2 open operation metrics (Jimmy, reviewed by Szehon)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/1cb30733
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/1cb30733
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/1cb30733
Branch: refs/heads/master
Commit: 1cb307336c32104f00351a7aa1282c3fdc7f12d0
Parents: cdaf356
Author: Jimmy Xiang <jx...@cloudera.com>
Authored: Mon Sep 28 15:24:44 2015 -0700
Committer: Jimmy Xiang <jx...@cloudera.com>
Committed: Wed Sep 30 07:49:02 2015 -0700
----------------------------------------------------------------------
.../hive/common/metrics/common/MetricsConstant.java | 1 +
.../apache/hive/service/cli/operation/Operation.java | 13 ++++++++++++-
.../hive/service/cli/operation/OperationManager.java | 11 +++++++++++
3 files changed, 24 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/1cb30733/common/src/java/org/apache/hadoop/hive/common/metrics/common/MetricsConstant.java
----------------------------------------------------------------------
diff --git a/common/src/java/org/apache/hadoop/hive/common/metrics/common/MetricsConstant.java b/common/src/java/org/apache/hadoop/hive/common/metrics/common/MetricsConstant.java
index d1ebe12..13c3cf9 100644
--- a/common/src/java/org/apache/hadoop/hive/common/metrics/common/MetricsConstant.java
+++ b/common/src/java/org/apache/hadoop/hive/common/metrics/common/MetricsConstant.java
@@ -27,6 +27,7 @@ public class MetricsConstant {
public static String JVM_EXTRA_SLEEP = "jvm.pause.extraSleepTime";
public static String OPEN_CONNECTIONS = "open_connections";
+ public static String OPEN_OPERATIONS = "open_operations";
public static String JDO_ACTIVE_TRANSACTIONS = "active_jdo_transactions";
public static String JDO_ROLLBACK_TRANSACTIONS = "rollbacked_jdo_transactions";
http://git-wip-us.apache.org/repos/asf/hive/blob/1cb30733/service/src/java/org/apache/hive/service/cli/operation/Operation.java
----------------------------------------------------------------------
diff --git a/service/src/java/org/apache/hive/service/cli/operation/Operation.java b/service/src/java/org/apache/hive/service/cli/operation/Operation.java
index 19153b6..0ab38c9 100644
--- a/service/src/java/org/apache/hive/service/cli/operation/Operation.java
+++ b/service/src/java/org/apache/hive/service/cli/operation/Operation.java
@@ -25,6 +25,9 @@ import java.util.concurrent.TimeUnit;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.hadoop.hive.common.metrics.common.Metrics;
+import org.apache.hadoop.hive.common.metrics.common.MetricsConstant;
+import org.apache.hadoop.hive.common.metrics.common.MetricsFactory;
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.ql.processors.CommandProcessorResponse;
import org.apache.hadoop.hive.ql.session.OperationLog;
@@ -251,9 +254,17 @@ public abstract class Operation {
*/
protected abstract void runInternal() throws HiveSQLException;
- public void run() throws HiveSQLException {
+ public final void run() throws HiveSQLException {
beforeRun();
try {
+ Metrics metrics = MetricsFactory.getInstance();
+ if (metrics != null) {
+ try {
+ metrics.incrementCounter(MetricsConstant.OPEN_OPERATIONS);
+ } catch (Exception e) {
+ LOG.warn("Error Reporting open operation to Metrics system", e);
+ }
+ }
runInternal();
} finally {
afterRun();
http://git-wip-us.apache.org/repos/asf/hive/blob/1cb30733/service/src/java/org/apache/hive/service/cli/operation/OperationManager.java
----------------------------------------------------------------------
diff --git a/service/src/java/org/apache/hive/service/cli/operation/OperationManager.java b/service/src/java/org/apache/hive/service/cli/operation/OperationManager.java
index 304a525..e29b4b6 100644
--- a/service/src/java/org/apache/hive/service/cli/operation/OperationManager.java
+++ b/service/src/java/org/apache/hive/service/cli/operation/OperationManager.java
@@ -26,6 +26,9 @@ import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.hadoop.hive.common.metrics.common.Metrics;
+import org.apache.hadoop.hive.common.metrics.common.MetricsConstant;
+import org.apache.hadoop.hive.common.metrics.common.MetricsFactory;
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
import org.apache.hadoop.hive.metastore.api.FieldSchema;
@@ -209,6 +212,14 @@ public class OperationManager extends AbstractService {
if (operation == null) {
throw new HiveSQLException("Operation does not exist!");
}
+ Metrics metrics = MetricsFactory.getInstance();
+ if (metrics != null) {
+ try {
+ metrics.decrementCounter(MetricsConstant.OPEN_OPERATIONS);
+ } catch (Exception e) {
+ LOG.warn("Error Reporting close operation to Metrics system", e);
+ }
+ }
operation.close();
}