[ 
https://issues.apache.org/jira/browse/ACCUMULO-1051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13578006#comment-13578006
 ] 

Keith Turner commented on ACCUMULO-1051:
----------------------------------------

bq. Won't there be a sizable performance impact by switching it to a TreeSet, 
given how we check users Authorizations as we iterate over key value pairs?

Looked in the code, the set is directly used by the VisibilityEvaluator. O(log 
n) is probably ok for small auths sets.  But I think it would be faster to 
switch back to a HashSet than do performance tests :)   I say just sort on 
serialize and switch back to hashset.
                
> Authorizations has inconsistent serialization
> ---------------------------------------------
>
>                 Key: ACCUMULO-1051
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1051
>             Project: Accumulo
>          Issue Type: Bug
>          Components: client
>            Reporter: Christopher Tubbs
>            Assignee: Kevin Faro
>            Priority: Trivial
>              Labels: newbie
>             Fix For: 1.5.0
>
>         Attachments: accumulo-1051.patch
>
>
> The same set of authorizations may not serialize to the same value each time, 
> if specified in a different order when constructed (like new 
> Authorizations("a", "b") and new Authorizations("b", "a")), because 
> serialization reproducibility depends on the insert order in the underlying 
> HashSet.
> So, one could get the following to happen:
> {code:java}
> true == auths1.equals(auths2) && 
> !auths1.serialize().equals(auths2.serialize());
> {code}

--
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

Reply via email to