You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Thomas Neidhart (JIRA)" <ji...@apache.org> on 2013/02/07 18:33:12 UTC
[jira] [Comment Edited] (COLLECTIONS-439) TreeBag with comparator
does not store non-key duplicates.
[ https://issues.apache.org/jira/browse/COLLECTIONS-439?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13573689#comment-13573689 ]
Thomas Neidhart edited comment on COLLECTIONS-439 at 2/7/13 5:31 PM:
---------------------------------------------------------------------
The TreeBag uses internally also a TreeMap, which requires that the used comparator must be consistent with equals, i.e. (compare(x,y) == 0) == x.equals\(y\).
>From your description I understand that your comparator violates this requirement, so this is not a bug, but could be an improvement.
The attached bug has a few problems:
* we can not add external dependencies to e.g. jena
* missing test case
was (Author: tn):
The TreeBag uses internally also a TreeMap, which requires that the used comparator must be consistent with equals, i.e. (compare(x,y) == 0) == x.equals(y).
>From your description I understand that your comparator violates this requirement, so this is not a bug, but could be an improvement.
The attached bug has a few problems:
* we can not add external dependencies to e.g. jena
* missing test case
> TreeBag with comparator does not store non-key duplicates.
> ----------------------------------------------------------
>
> Key: COLLECTIONS-439
> URL: https://issues.apache.org/jira/browse/COLLECTIONS-439
> Project: Commons Collections
> Issue Type: Bug
> Components: Bag
> Affects Versions: 3.2.1
> Reporter: Claude Warren
> Attachments: SortedBag.java
>
>
> When storing objects that are sorted by a Comparator, if the differences in the objects are not in the comparator the same version of the object is returned. I expected that the sorted bag would work like a DB table with a non-unique key -- ordered but duplicate only determined by Object.equals().
> I have implemented this type of bag using a TreeMap of List. My implementation uses the Jena ExtendedIterator to make building the iterator() and array() methods easier.
> Will attach the 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