question on jdk_collections group in jdk/test/TEST.groups

Stuart Marks stuart.marks at oracle.com
Thu Dec 10 22:14:22 UTC 2015


Hi Martin,

Thanks for looking at this. I also heard offline from Mike Duigou that the 
current grouping was meant to be an intermediate step. He mentioned plans to 
break it into multiple sub-groups, but that didn't happen. But cleaning up the 
jdk_collections group seems sensible.

In any case it appears that the historic separation of Deque and PQ into 
jdk_concurrent is no longer useful. I'll move these two into jdk_collections.

Cross-checking your recommendation against jdk_collections, I see that it's 
missing HashSet, but it includes Comparator, Iterator, and TimSort. I think it 
makes sense to leave those in. I'll also alphabetize the list.

s'marks

On 12/10/15 9:46 AM, Martin Buchholz wrote:
> I don't know how jdk_collections was defined.  I recommend fixing it as below.
>
> The distinction between "maintained by JSR-166" and other collections
> is useful when knowing who to contact and whether to make changes to
> particular source files (or defer to JSR-166).  But it's not useful
> for knowing what tests to run.  (Also, jsr166 has taken over
> maintenance of some legacy tests).  Personally I always run the
> concurrent tests together with the collection tests, as in:
>
>   (cd ~/ws/jdk9/jdk/test && find java/util -type d \( \( -name
> concurrent -prune \) -o -name '*Set*' -o -name '*Map*' -o -name
> '*List*' -o -name '*Queue*' -o -name '*Deque*' -o -name '*Collection*'
> -o -name '*Vector*' -o -name '*Hashtable*' -o -name '*Array*' \) )
> java/util/TreeMap
> java/util/Vector
> java/util/HashMap
> java/util/concurrent
> java/util/HashSet
> java/util/BitSet
> java/util/ArrayList
> java/util/EnumSet
> java/util/List
> java/util/PriorityQueue
> java/util/Arrays
> java/util/NavigableMap
> java/util/AbstractList
> java/util/Deque
> java/util/Collections
> java/util/IdentityHashMap
> java/util/EnumMap
> java/util/AbstractSequentialList
> java/util/Hashtable
> java/util/LinkedHashSet
> java/util/AbstractMap
> java/util/LinkedHashMap
> java/util/Collection
> java/util/Map
> java/util/LinkedList
> java/util/AbstractCollection
> java/util/WeakHashMap
>
> On Wed, Dec 9, 2015 at 5:47 PM, Stuart Marks <stuart.marks at oracle.com> wrote:
>> Hi, maybe somebody can fill me in on the history here.
>>
>> There's a nice test group called jdk_collections defined in
>> jdk/test/TEST.groups. It runs the tests for the collections in java/util
>> (but not java/util/concurrent) and it excludes all the stuff in java/util
>> that isn't collections-related.
>>
>> Well, not really. The jdk_collections group excludes the java/util/Deque and
>> java/util/PriorityQueue tests. Those are in the jdk_concurrent test group,
>> and there's a note there that those are maintained by "JSR-166 (Doug Lea et
>> al)".
>>
>> I'm dimly aware that some of the newer non-concurrent collections like Deque
>> and PQ came in via the various JSR-166 efforts. Is it still useful to
>> preserve this distinction in the TEST.groups file? It seems to me that, as
>> much as possible, the jdk_collections group should include the "core
>> collections" tests and the jdk_concurrent group should include the tests for
>> the j.u.c stuff.
>>
>> s'marks



More information about the core-libs-dev mailing list