jcamachor commented on a change in pull request #794: HIVE-21884
URL: https://github.com/apache/hive/pull/794#discussion_r332260987
 
 

 ##########
 File path: 
ql/src/java/org/apache/hadoop/hive/ql/schq/MetastoreBasedScheduledQueryService.java
 ##########
 @@ -0,0 +1,64 @@
+package org.apache.hadoop.hive.ql.schq;
+
+import org.apache.hadoop.hive.conf.HiveConf;
+import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
+import org.apache.hadoop.hive.metastore.IMetaStoreClient;
+import org.apache.hadoop.hive.metastore.api.MetaException;
+import org.apache.hadoop.hive.metastore.api.ScheduledQueryPollRequest;
+import org.apache.hadoop.hive.metastore.api.ScheduledQueryPollResponse;
+import org.apache.hadoop.hive.metastore.api.ScheduledQueryProgressInfo;
+import org.apache.hadoop.hive.ql.metadata.Hive;
+import org.apache.hadoop.hive.ql.metadata.HiveException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class MetastoreBasedScheduledQueryService implements 
IScheduledQueryMaintenanceService {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(MetastoreBasedScheduledQueryService.class);
+  private HiveConf conf;
+
+  public MetastoreBasedScheduledQueryService(HiveConf conf) {
+    this.conf = conf;
+  }
+
+  @Override
+  public ScheduledQueryPollResponse scheduledQueryPoll() {
+    try {
+      ScheduledQueryPollRequest request = new ScheduledQueryPollRequest();
+      request.setClusterNamespace(getClusterNamespace());
+      ScheduledQueryPollResponse resp = getMSC().scheduledQueryPoll(request);
+      return resp;
+    } catch (Exception e) {
+      logException("Exception while polling scheduled queries", e);
+      return null;
+    }
+  }
+
+  @Override
+  public void scheduledQueryProgress(ScheduledQueryProgressInfo info) {
+    try {
+      getMSC().scheduledQueryProgress(info);
+    } catch (Exception e) {
+      logException("Exception while updating scheduled execution status of: " 
+ info.getScheduledExecutionId(), e);
+    }
+  }
+
+  private IMetaStoreClient getMSC() throws MetaException, HiveException {
+    return Hive.get(conf).getMSC();
+  }
+
+  static void logException(String msg, Exception e) {
+    if (LOG.isDebugEnabled()) {
 
 Review comment:
   This does not seem intuitive... Let's log it as error? Is it expected in any 
case to get an exception over here?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to