[ https://issues.apache.org/jira/browse/LUCENE-1238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Doron Cohen updated LUCENE-1238: -------------------------------- Attachment: LUCENE-1238.patch Problem was in test. However fix adds a greediness option to time-limited-collector (TLC): * A greedy TLC upon timeout would allow the wrapped collector to collect current doc and only then throw the timeout exception. * A non greedy TLC (the default, as before) will immediately throw the exception. For the test, setting to greedy allows to require that at least one doc was collected. I addition this patch: * Adds missing javadocs for TLC constructor. * Increase "slack" in timeout requirements in the test. This is to prevent further noise in this: HLC is required to timeout "not too soon and not too late", but in a busy machine the "not too late" part is problematic to test. I considered to removing this part (not too late), but decided to leave it in for now. * Adds a test for the setGreedy() option. All TLC tests pass. > intermittent failures of TestTimeLimitedCollector.testTimeoutMultiThreaded > in nightly tests > -------------------------------------------------------------------------------------------- > > Key: LUCENE-1238 > URL: https://issues.apache.org/jira/browse/LUCENE-1238 > Project: Lucene - Java > Issue Type: Bug > Affects Versions: 2.4 > Reporter: Doron Cohen > Assignee: Doron Cohen > Priority: Minor > Attachments: LUCENE-1238.patch > > > Occasionly TestTimeLimitedCollector.testTimeoutMultiThreaded fails. e.g. with > this output: > {noformat} > [junit] ------------- Standard Error ----------------- > [junit] Exception in thread "Thread-97" > junit.framework.AssertionFailedError: no hits found! > [junit] at junit.framework.Assert.fail(Assert.java:47) > [junit] at junit.framework.Assert.assertTrue(Assert.java:20) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.doTestTimeout(TestTimeLimitedCollector.java:152) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.access$100(TestTimeLimitedCollector.java:38) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector$1.run(TestTimeLimitedCollector.java:231) > [junit] Exception in thread "Thread-85" > junit.framework.AssertionFailedError: no hits found! > [junit] at junit.framework.Assert.fail(Assert.java:47) > [junit] at junit.framework.Assert.assertTrue(Assert.java:20) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.doTestTimeout(TestTimeLimitedCollector.java:152) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.access$100(TestTimeLimitedCollector.java:38) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector$1.run(TestTimeLimitedCollector.java:231) > [junit] ------------- ---------------- --------------- > [junit] Testcase: > testTimeoutMultiThreaded(org.apache.lucene.search.TestTimeLimitedCollector): > FAILED > [junit] some threads failed! expected:<50> but was:<48> > [junit] junit.framework.AssertionFailedError: some threads failed! > expected:<50> but was:<48> > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.doTestMultiThreads(TestTimeLimitedCollector.java:255) > [junit] at > org.apache.lucene.search.TestTimeLimitedCollector.testTimeoutMultiThreaded(TestTimeLimitedCollector.java:220) > [junit] > {noformat} > Problem either in test or in TimeLimitedCollector. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]