cmunkey commented on code in PR #3365:
URL: https://github.com/apache/hive/pull/3365#discussion_r899674228


##########
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/dump/events/AbortTxnHandler.java:
##########
@@ -39,6 +48,19 @@ public void handle(Context withinContext) throws Exception {
     if (!ReplUtils.includeAcidTableInDump(withinContext.hiveConf)) {
       return;
     }
+
+     if (ReplUtils.filterTransactionOperations(withinContext.hiveConf)) {
+       String contextDbName = 
StringUtils.normalizeIdentifier(withinContext.replScope.getDbName());
+       GetTxnWriteIdsRequest request = new 
GetTxnWriteIdsRequest(eventMessage.getTxnId());
+       request.setDbName(contextDbName);
+       GetTxnWriteIdsResponse response = 
withinContext.db.getMSC().getTxnWriteIds(request);

Review Comment:
   To move this during compilation, there are 2 difficulties:
   1. Would need to add a new field/status to AbortTxnEvent, this field would 
indicate whether or not this aborted txn involved writeids. REPL DUMP could 
filter based on this setting.
   2. The AbortTxnEvent is logged via TxnHandler.abort_txn(), so 
AbortTxnRequest would need to be modified to pass the writeid. AbortTxnRequest 
is a Thrift object. OR, abort_txn() could do the same HMS lookup that is 
currently done in AbortTxnHandler().
   
   Since this metastore call is done during REPL DUMP, would it be ok to live 
with this inefficiency and fix later with a more optimal implementation?



-- 
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: [email protected]

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