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

2017-05-23 Thread Wei Zheng (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-16743?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Wei Zheng updated HIVE-16743:
-
Status: Patch Available  (was: Open)

> 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
> Attachments: HIVE-16743.1.patch
>
>
> 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)


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

2017-05-23 Thread Wei Zheng (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-16743?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Wei Zheng updated HIVE-16743:
-
Attachment: HIVE-16743.1.patch

> 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
> Attachments: HIVE-16743.1.patch
>
>
> 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)