You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Wei Zheng (JIRA)" <ji...@apache.org> on 2017/05/23 21:47:04 UTC

[jira] [Created] (HIVE-16743) BitSet set() is not incorrectly used in TxnUtils.createValidCompactTxnList()

Wei Zheng created HIVE-16743:
--------------------------------

             Summary: BitSet set() is not incorrectly used in TxnUtils.createValidCompactTxnList()
                 Key: HIVE-16743
                 URL: https://issues.apache.org/jira/browse/HIVE-16743
             Project: Hive
          Issue Type: Bug
          Components: Transactions
    Affects Versions: 3.0.0
            Reporter: Wei Zheng
            Assignee: Wei Zheng


The second line is problematic
{code}
    BitSet bitSet = new BitSet(exceptions.length);
    bitSet.set(0, bitSet.length()); // for ValidCompactorTxnList, everything in exceptions are aborted
{code}
For example, exceptions' length is 2. We declare a BitSet object with initial size of 2 via the first line above. But that's not the actual size of the BitSet. So bitSet.length() will still return 0.

The intention of the second line above is to set all the bits to true. This was not achieved because bitSet.set(0, bitSet.length()) is equivalent to bitSet.set(0, 0).



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)