klcopp commented on a change in pull request #2068:
URL: https://github.com/apache/hive/pull/2068#discussion_r598534948



##########
File path: 
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java
##########
@@ -5086,8 +5093,10 @@ public void performTimeOuts() {
       while(true) {
         stmt = dbConn.createStatement();
         String s = " \"TXN_ID\" FROM \"TXNS\" WHERE \"TXN_STATE\" = " + 
TxnStatus.OPEN +
-            " AND \"TXN_LAST_HEARTBEAT\" <  " + getEpochFn(dbProduct) + "-" + 
timeout +
-            " AND \"TXN_TYPE\" != " + TxnType.REPL_CREATED.getValue();
+            " AND \"TXN_LAST_HEARTBEAT\" <  " + getEpochFn(dbProduct) + "-" +
+            (replication ? replicationTxnTimeout : timeout) +
+            " AND \"TXN_TYPE\" " +

Review comment:
       @aasha Thanks for taking a look.
   
   performTimeOuts() calls performTimeOutsInternal twice:
   1. times out non-repl txns -> timeout is timeout and TXN_TYPE != REPL_CREATED
   2. times out repl txns -> timeout is replicationTxnTimeout and 
TXN_TYPE=REPL_CREATED
   
   I supposed this could be optimized but I don't see how it is incorrect?




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



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

Reply via email to