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 2014/02/04 00:43:08 UTC
[jira] [Assigned] (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 reassigned HBASE-7579:
--------------------------------------
Assignee: Matteo Bertozzi (was: Aleksandr Shulman)
> 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.94.6, 0.95.0
> Reporter: Aleksandr Shulman
> Assignee: Matteo Bertozzi
> Priority: Minor
> Fix For: 0.99.0
>
> 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 was sent by Atlassian JIRA
(v6.1.5#6160)