[ 
https://issues.apache.org/jira/browse/HIVE-27020?focusedWorklogId=855791&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-855791
 ]

ASF GitHub Bot logged work on HIVE-27020:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 10/Apr/23 12:10
            Start Date: 10/Apr/23 12:10
    Worklog Time Spent: 10m 
      Work Description: deniskuzZ commented on code in PR #4091:
URL: https://github.com/apache/hive/pull/4091#discussion_r1161670816


##########
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/CompactionTxnHandler.java:
##########
@@ -702,6 +699,102 @@ public void markCleaned(CompactionInfo info) throws 
MetaException {
     }
   }
 
+  @Override
+  public void markCleanedForAborts(AcidTxnInfo info) throws MetaException {
+    // Do cleanup of TXN_COMPONENTS table
+    LOG.debug("Running markCleanedForAborts with CompactionInfo: {}", info);
+    try {
+      Connection dbConn = null;
+      try {
+        dbConn = getDbConn(Connection.TRANSACTION_READ_COMMITTED, 
connPoolCompaction);
+        markAbortCleaned(dbConn, info);
+        LOG.debug("Going to commit");
+        dbConn.commit();
+      } catch (SQLException e) {
+        LOG.error("Unable to delete from txn components due to {}", 
e.getMessage());
+        LOG.debug("Going to rollback");
+        rollbackDBConn(dbConn);
+        checkRetryable(e, "markCleanedForAborts(" + info + ")");
+        throw new MetaException("Unable to connect to transaction database " +
+                e.getMessage());
+      } finally {
+        closeDbConn(dbConn);
+      }
+    } catch (RetryException e) {
+      markCleanedForAborts(info);
+    }
+  }
+
+  private void markAbortCleaned(Connection dbConn, AcidTxnInfo info) throws 
MetaException, RetryException {

Review Comment:
   rename to `removeTxnComponents`





Issue Time Tracking
-------------------

    Worklog Id:     (was: 855791)
    Time Spent: 10h 10m  (was: 10h)

> Implement a separate handler to handle aborted transaction cleanup
> ------------------------------------------------------------------
>
>                 Key: HIVE-27020
>                 URL: https://issues.apache.org/jira/browse/HIVE-27020
>             Project: Hive
>          Issue Type: Sub-task
>            Reporter: Sourabh Badhya
>            Assignee: Sourabh Badhya
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10h 10m
>  Remaining Estimate: 0h
>
> As described in the parent task, once the cleaner is separated into different 
> entities, implement a separate handler which can create requests for aborted 
> transactions cleanup. This would move the aborted transaction cleanup 
> exclusively to the cleaner.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to