Details
-
Improvement
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
1.1.0
-
None
-
None
Description
This method only needs HWM and list of txn IDs in 'a' state and smallest 'o' txn id.
It's currently implemented to get the list from TxnHandler.getOpenTxnsInfo(),
which returns (txn id, state, host, user) for each txn and includes Aborted txns.
This can easily be 120 bytes or more per txn overhead (over 1 Java long) which not an issue in general but when the system is misconfigured, the number of opened/aborted txns can get into the millions. This creates unnecessary memory pressure on metastore.
Should consider fixing this.
This should be easy to fix since the result of getOpenTxnsInfo() doesn't go over the wire.
Also, ValidCompactorTxnList doesn't actually need to store the 'o' txn ids, just the 'a' ones.