There is nothing you can do that I have looked at in a reasonable amount of 
time and effort.

These are tests, and something like that would take a fair amount of mocking / 
dependency injection. If someone starts tackling that type of thing, I'll help, 
but it's not something I'm working on right now. And it would be better for a 
specific test case, not this large integration test stuff.

I'd rather also have full integration tests that don't mock and inject odd test 
code. That's all I fully trust at the end of the day. The rest is just nice and 
helpful.

If you have a patch to propose, I'd be happy to comment on it though.

- Mark


On Dec 14, 2012, at 6:50 PM, Uwe Schindler <[email protected]> wrote:

> Why have hardcoded sleeps? Could it not be wait/notify? When node shutted 
> down it sends notify() and the waiting node waits without limit??
> 
> -----
> Uwe Schindler
> H.-H.-Meier-Allee 63, D-28213 Bremen
> http://www.thetaphi.de
> eMail: [email protected]
> 
> 
>> -----Original Message-----
>> From: Mark Miller [mailto:[email protected]]
>> Sent: Saturday, December 15, 2012 12:45 AM
>> To: [email protected]
>> Subject: Re: [JENKINS-MAVEN] Lucene-Solr-Maven-trunk #708: POMs out of
>> sync
>> 
>> The problem is that the black hole problem with no query side timeout.
>> 
>> I have to do all these waits that slow down tests to try avoiding ever 
>> querying a
>> node that is down. So in many cases, I have to wait as long as the zkclient
>> timeout until the ephemeral node representing a SolrCore times out. That is
>> so that we avoid reading it and god forbid, make a request to it. That 
>> request
>> will never come back home.
>> 
>> The below fail is doing such a wait. It's waiting to see the node go away, 
>> but I
>> guess not waiting long enough.
>> 
>> I'd love to remove these's waits, speed up tests, and actually test what
>> happens when you query a node that is down.
>> 
>> But FreeBDS + Blackhole thwarts me.
>> 
>> - Mark
>> 
>> 
>> On Dec 14, 2012, at 6:38 PM, Uwe Schindler <[email protected]> wrote:
>> 
>>> "SOLR-4189: Fix hanging threads on FreeBSD in JettySolrRunner by making
>> connector configureable through sysprop" is fixed. Also my cool
>> syspropertyset worked to pass down sysprop to maven.
>>> 
>>> The failing test is a well-known one.
>>> 
>>> -----
>>> Uwe Schindler
>>> H.-H.-Meier-Allee 63, D-28213 Bremen
>>> http://www.thetaphi.de
>>> eMail: [email protected]
>>> 
>>> 
>>>> -----Original Message-----
>>>> From: Apache Jenkins Server [mailto:[email protected]]
>>>> Sent: Saturday, December 15, 2012 12:35 AM
>>>> To: [email protected]
>>>> Subject: [JENKINS-MAVEN] Lucene-Solr-Maven-trunk #708: POMs out of
>>>> sync
>>>> 
>>>> Build: https://builds.apache.org/job/Lucene-Solr-Maven-trunk/708/
>>>> 
>>>> 1 tests failed.
>>>> FAILED:  org.apache.solr.cloud.SyncSliceTest.testDistribSearch
>>>> 
>>>> Error Message:
>>>> Shard still reported as live in zk - 0 jetty
>>>> 
>>>> Stack Trace:
>>>> java.lang.AssertionError: Shard still reported as live in zk - 0 jetty
>>>>    at
>>>> 
>> __randomizedtesting.SeedInfo.seed([F48C972F3236E094:756A1937456980
>>>> A8]:0)
>>>>    at org.junit.Assert.fail(Assert.java:93)
>>>>    at
>>>> org.apache.solr.cloud.AbstractFullDistribZkTestBase.waitToSeeNotLive(
>>>> Abstrac
>>>> tFullDistribZkTestBase.java:1239)
>>>>    at
>>>> org.apache.solr.cloud.AbstractFullDistribZkTestBase.waitToSeeNotLive(
>>>> Abstrac
>>>> tFullDistribZkTestBase.java:1224)
>>>>    at
>>>> org.apache.solr.cloud.SyncSliceTest.waitToSeeDownInClusterState(SyncS
>>>> liceT
>>>> est.java:259)
>>>>    at org.apache.solr.cloud.SyncSliceTest.doTest(SyncSliceTest.java:223)
>>>>    at
>>>> org.apache.solr.BaseDistributedSearchTestCase.testDistribSearch(BaseD
>>>> istribu
>>>> tedSearchTestCase.java:793)
>>>>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>    at
>>>> 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
>>>> jav
>>>> a:57)
>>>>    at
>>>> 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>>>> so
>>>> rImpl.java:43)
>>>>    at java.lang.reflect.Method.invoke(Method.java:616)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(Randomized
>>>> Runner.java:1559)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner.access$600(Random
>>>> izedRunner.java:79)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(Random
>>>> i
>>>> zedRunner.java:737)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(Random
>>>> i
>>>> zedRunner.java:773)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(Random
>>>> i
>>>> zedRunner.java:787)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$
>>>> 1.e
>>>> valuate(SystemPropertiesRestoreRule.java:53)
>>>>    at
>>>> org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRu
>>>> leS
>>>> etupTeardownChained.java:50)
>>>>    at
>>>> org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFi
>>>> eldCac
>>>> heSanity.java:51)
>>>>    at
>>>> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBef
>>>> oreAf
>>>> terRule.java:46)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRul
>>>> e$1.e
>>>> valuate(SystemPropertiesInvariantRule.java:55)
>>>>    at
>>>> org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleT
>>>> hre
>>>> adAndTestName.java:49)
>>>>    at
>>>> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(Test
>>>> RuleIg
>>>> noreAfterMaxFailures.java:70)
>>>>    at
>>>> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFai
>>>> lure.j
>>>> ava:48)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(St
>>>> atem
>>>> entAdapter.java:36)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.
>>>> ru
>>>> n(ThreadLeakControl.java:358)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTa
>>>> sk(
>>>> ThreadLeakControl.java:782)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(Threa
>>>> dL
>>>> eakControl.java:442)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(Ran
>>>> do
>>>> mizedRunner.java:746)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(Random
>>>> i
>>>> zedRunner.java:648)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(Random
>>>> i
>>>> zedRunner.java:682)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(Random
>>>> i
>>>> zedRunner.java:693)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(St
>>>> atem
>>>> entAdapter.java:36)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$
>>>> 1.e
>>>> valuate(SystemPropertiesRestoreRule.java:53)
>>>>    at
>>>> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBef
>>>> oreAf
>>>> terRule.java:46)
>>>>    at
>>>> org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStor
>>>> eClas
>>>> sName.java:42)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRul
>>>> e$1.e
>>>> valuate(SystemPropertiesInvariantRule.java:55)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMeth
>>>> odsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMeth
>>>> odsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(St
>>>> atem
>>>> entAdapter.java:36)
>>>>    at
>>>> org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRule
>>>> Asser
>>>> tionsRequired.java:43)
>>>>    at
>>>> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFai
>>>> lure.j
>>>> ava:48)
>>>>    at
>>>> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(Test
>>>> RuleIg
>>>> noreAfterMaxFailures.java:70)
>>>>    at
>>>> org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIg
>>>> noreTe
>>>> stSuites.java:55)
>>>>    at
>>>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(St
>>>> atem
>>>> entAdapter.java:36)
>>>>    at
>>>> 
>> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.
>>>> ru
>>>> n(ThreadLeakControl.java:358)
>>>>    at java.lang.Thread.run(Thread.java:679)
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Build Log:
>>>> [...truncated 21206 lines...]
>>>> 
>>> 
>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected] For
>>> additional commands, e-mail: [email protected]
>>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected] For additional
>> commands, e-mail: [email protected]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to