diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt index 4bc3cf52406..61416ef1f2f 100644 --- a/lucene/CHANGES.txt +++ b/lucene/CHANGES.txt @@ -825,6 +825,12 @@ Bug fixes * LUCENE-3605: don't sleep in a retry loop when trying to locate the segments_N file (Robert Muir, Mike McCandless) +* LUCENE-3711: SentinelIntSet with a small initial size can go into + an infinite loop when expanded. This can affect grouping using + TermAllGroupsCollector or TermAllGroupHeadsCollector if instantiated with a + non default small size. (Martijn van Groningen, yonik) + + Optimizations * LUCENE-3653: Improve concurrency in VirtualMethod and AttributeSource by diff --git a/lucene/src/test/org/apache/lucene/util/TestSentinelIntSet.java b/lucene/src/test/org/apache/lucene/util/TestSentinelIntSet.java index 736596f0ff1..46511340dc7 100644 --- a/lucene/src/test/org/apache/lucene/util/TestSentinelIntSet.java +++ b/lucene/src/test/org/apache/lucene/util/TestSentinelIntSet.java @@ -48,18 +48,6 @@ public class TestSentinelIntSet extends LuceneTestCase { assertEquals(24, set.rehashCount); } - @Test - public void testRehash() throws Exception { - SentinelIntSet set = new SentinelIntSet(3, -1); - set.put(1); - set.find(99); - set.put(2); - set.find(99); - set.put(3); - set.find(99); - set.put(4); - set.find(99); - } @Test public void testRandom() throws Exception {