You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Matteo Bertozzi (JIRA)" <ji...@apache.org> on 2013/04/01 12:43:16 UTC
[jira] [Updated] (HBASE-7579) HTableDescriptor equals method fails
if results are returned in a different order
[ https://issues.apache.org/jira/browse/HBASE-7579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matteo Bertozzi updated HBASE-7579:
-----------------------------------
Attachment: HBASE-7579-v5.patch
HBASE-7579-0.94.patch
attaching 94 patch with the HTD and HCD tests and the empty family name check in isLegalFamilyName().
v5 is the rebased trunk patch also removing code in constructors that is already in setName().
> HTableDescriptor equals method fails if results are returned in a different order
> ---------------------------------------------------------------------------------
>
> Key: HBASE-7579
> URL: https://issues.apache.org/jira/browse/HBASE-7579
> Project: HBase
> Issue Type: Bug
> Components: Admin
> Affects Versions: 0.95.0, 0.94.6
> Reporter: Aleksandr Shulman
> Assignee: Aleksandr Shulman
> Priority: Minor
> Fix For: 0.95.0, 0.94.7
>
> Attachments: HBASE-7579-0.94.patch, HBASE-7579-v1.patch, HBASE-7579-v2.patch, HBASE-7579-v3.patch, HBASE-7579-v4.patch, HBASE-7579-v5.patch
>
>
> HTableDescriptor's compareTo function compares a set of HColumnDescriptors against another set of HColumnDescriptors. It iterates through both, relying on the fact that they will be in the same order.
> In my testing, I may have seen this issue come up, so I decided to fix it.
> It's a straightforward fix. I convert the sets into a hashset for O(1) lookups (at least in theory), then I check that all items in the first set are found in the second.
> Since the sizes are the same, we know that if all elements showed up in the second set, then they must be equal.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira