deniskuzZ commented on code in PR #3822:
URL: https://github.com/apache/hive/pull/3822#discussion_r1085219185


##########
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSMetricsListener.java:
##########
@@ -98,29 +100,39 @@ public void onAddPartition(AddPartitionEvent 
partitionEvent) throws MetaExceptio
   @Override
   public void onAllocWriteId(AllocWriteIdEvent allocWriteIdEvent, Connection 
dbConn, SQLGenerator sqlGenerator) throws MetaException {
     if (MetastoreConf.getBoolVar(getConf(), 
MetastoreConf.ConfVars.METASTORE_ACIDMETRICS_EXT_ON)) {
-      Table table = getTable(allocWriteIdEvent);
-      // In the case of CTAS, the table is created after write ids are 
allocated, so we'll skip metrics collection.
-      if (table != null && 
MetaStoreUtils.isNoAutoCompactSet(table.getParameters())) {
-        int noAutoCompactSet =
-            
Metrics.getOrCreateGauge(MetricsConstants.WRITES_TO_DISABLED_COMPACTION_TABLE).incrementAndGet();
-        if (noAutoCompactSet >=
-            MetastoreConf.getIntVar(getConf(),
-                
MetastoreConf.ConfVars.COMPACTOR_NUMBER_OF_DISABLED_COMPACTION_TABLES_THRESHOLD))
 {
-          LOGGER.warn("There has been a write to table " + table.getDbName() + 
"." + table.getTableName() +
-              " where auto-compaction is disabled (tblproperties 
(\"no_auto_compact\"=\"true\")).");
+      if (isNoAutoCompactSet(allocWriteIdEvent)) {
+        int numOfWritesToDisabledCompactionTable = 
Metrics.getOrCreateGauge(MetricsConstants.WRITES_TO_DISABLED_COMPACTION_TABLE).incrementAndGet();
+        if (numOfWritesToDisabledCompactionTable >= 
MetastoreConf.getIntVar(getConf(), 
MetastoreConf.ConfVars.COMPACTOR_NUMBER_OF_DISABLED_COMPACTION_TABLES_THRESHOLD))
 {
+          LOGGER.warn(
+              "There has been a write to table " + 
allocWriteIdEvent.getDbName() + "." + allocWriteIdEvent.getTableName() + " 
where auto-compaction is disabled \"no_auto_compact\"=\"true\".");
         }
       }
     }
   }
 
-  private Table getTable(AllocWriteIdEvent allocWriteIdEvent) throws 
MetaException {
+  private Boolean isNoAutoCompactSet(AllocWriteIdEvent allocWriteIdEvent) 
throws MetaException {
     String catalog = MetaStoreUtils.getDefaultCatalog(getConf());
     String dbName = allocWriteIdEvent.getDbName();
     String tableName = allocWriteIdEvent.getTableName();
-    if (allocWriteIdEvent.getIHMSHandler() != null) {
-      return allocWriteIdEvent.getIHMSHandler().getMS().getTable(catalog, 
dbName, tableName);
-    } else {
-      return HMSHandler.getMSForConf(getConf()).getTable(catalog, dbName, 
tableName);
+    Map<String, String> dbParameters;
+    Table table;
+    try {

Review Comment:
   try scope is unclear, maybe:
   ````
     private Boolean isNoAutoCompactSet(AllocWriteIdEvent allocWriteIdEvent) 
throws MetaException {
       String catalog = MetaStoreUtils.getDefaultCatalog(getConf());
       String dbName = allocWriteIdEvent.getDbName();
       String tableName = allocWriteIdEvent.getTableName();
       
       RawStore rawStore;
       if (allocWriteIdEvent.getIHMSHandler() != null) {
         rawStore = allocWriteIdEvent.getIHMSHandler().getMS();
       } else {
         rawStore = HMSHandler.getMSForConf(getConf());
       }
       Map<String, String> dbParameters;
       try {
         dbParameters = rawStore.getDatabase(catalog, dbName).getParameters();
       } catch (NoSuchObjectException e) {
         LOGGER.error("Unable to find database " + dbName + ", " + 
e.getMessage());
         throw new MetaException(String.valueOf(e));
       }
       Table table = rawStore.getTable(catalog, dbName, tableName);
       // In the case of CTAS, the table is created after write ids are 
allocated, so we'll skip metrics collection.
       if (table != null) {
         return MetaStoreUtils.isNoAutoCompactSet(dbParameters, 
table.getParameters());
       }
       return false;
     }
   ````



-- 
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.

To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to