jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig <mdue...@apache.org>
Subject Re: The revenge of OAK-53 part II: IT failure
Date Thu, 24 May 2012 11:24:47 GMT


On 24.5.12 11:43, Dominique Pfister wrote:
> Hm, I just ran this test another couple of times, but am still unable to reproduce it.
I noticed that your EverythingIT test run takes almost twice as much time than mine, which
might hint at some timing-related problem.
>
> Berofe adding some logging output to the server to find out what causes this problem,
may I ask you to try the following: comment line 72 in oak-mk's HttpProcessor.java:
>
> 72:         socket.setSoTimeout(INITIAL_SO_TIMEOUT);
>
> and re-run the test? This is just a wild guess, but perhaps the initial socket timeout
of 1 second is too aggressive for the transfer of 32MB-sized blob.

Ok I did so. So far the test didn't fail again. I'll keep an eye on it 
and let you know.

Michael

>
> Dominique
>
> On May 24, 2012, at 12:14 PM, Michael Dürig wrote:
>
>>
>>
>> On 24.5.12 10:59, Dominique Pfister wrote:
>>> Hi Michi,
>>>
>>> And you're sure you built and installed the latest oak-mk package, and are not
accidentally refering to an old one that doesn't contain the fix made in OAK-12, namely to
BoundaryInputStream?
>>
>> I think so. I did svn up and mvn clean install -PintegrationTesting just
>> a couple of hours ago.
>>
>> Michael
>>
>>>
>>> Cheers
>>> Dominique
>>>
>>> On May 24, 2012, at 11:43 AM, Michael Dürig wrote:
>>>
>>>>
>>>> Hi Dominique,
>>>>
>>>> On 23.5.12 13:45, Dominique Pfister wrote:
>>>>> Hi Michi,
>>>>>
>>>>> On May 23, 2012, at 1:38 PM, Michael Dürig wrote:
>>>>>
>>>>>> Didn't see it again up to now. I'll keep an eye on it. Is there any
log
>>>>>> data that would be helpful if this occurs again?
>>>>>
>>>>> Unfortunately not (yet), if it reappears, I'll add a logger to the mk
subproject and log messages in the server.
>>>>
>>>> This just happens again. The output form the Maven build is
>>>>
>>>> -------------------------------------------------------
>>>>   T E S T S
>>>> -------------------------------------------------------
>>>> Running org.apache.jackrabbit.mk.test.EverythingIT
>>>> java.io.IOException: Bad HTTP request line: 9?)c??:O?+?w
>>>>
>>>> ?c9???'td???>????a"Y??#0??ˀ??+??4¨?:?0?1
>>>>
>>>>                           #`#
>>>> at org.apache.jackrabbit.mk.server.Request.parse(Request.java:72)
>>>> at
>>>> org.apache.jackrabbit.mk.server.HttpProcessor.process(HttpProcessor.java:100)
>>>> at
>>>> org.apache.jackrabbit.mk.server.HttpProcessor.process(HttpProcessor.java:75)
>>>> at org.apache.jackrabbit.mk.server.Server.process(Server.java:169)
>>>> at org.apache.jackrabbit.mk.server.Server$2.run(Server.java:131)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>> at java.lang.Thread.run(Thread.java:680)
>>>> Tests run: 72, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 15.639
>>>> sec<<<   FAILURE!
>>>>
>>>> Results :
>>>>
>>>> Tests in error:
>>>>    testBlobs[1](org.apache.jackrabbit.mk.test.MicroKernelIT):
>>>> java.net.SocketException: Broken pipe
>>>>
>>>> Tests run: 72, Failures: 0, Errors: 1, Skipped: 0
>>>>
>>>>
>>>> Stack trace from the logs:
>>>>
>>>> -------------------------------------------------------------------------------
>>>> Test set: org.apache.jackrabbit.mk.test.EverythingIT
>>>> -------------------------------------------------------------------------------
>>>> Tests run: 72, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 15.64
>>>> sec<<<   FAILURE!
>>>> testBlobs[1](org.apache.jackrabbit.mk.test.MicroKernelIT)  Time elapsed:
>>>> 4.259 sec<<<   ERROR!
>>>> org.apache.jackrabbit.mk.api.MicroKernelException:
>>>> java.net.SocketException: Broken pipe
>>>> 	at
>>>> org.apache.jackrabbit.mk.client.Client.toMicroKernelException(Client.java:372)
>>>> 	at org.apache.jackrabbit.mk.client.Client.write(Client.java:353)
>>>> 	at
>>>> org.apache.jackrabbit.mk.test.MicroKernelIT.testBlobs(MicroKernelIT.java:855)
>>>> 	at
>>>> org.apache.jackrabbit.mk.test.MicroKernelIT.testBlobs(MicroKernelIT.java:843)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> 	at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:597)
>>>> 	at
>>>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>>>> 	at
>>>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>>>> 	at
>>>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>>>> 	at
>>>> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>>>> 	at
>>>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>>>> 	at
>>>> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
>>>> 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>>>> 	at
>>>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>>>> 	at
>>>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>>>> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>>>> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>>>> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>>>> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>>>> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:128)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:24)
>>>> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>>>> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>>>> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>>>> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>>>> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:128)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:24)
>>>> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>>>> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>>>> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>>>> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>>>> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:128)
>>>> 	at org.junit.runners.Suite.runChild(Suite.java:24)
>>>> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>>>> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>>>> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>>>> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>>>> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>>>> 	at
>>>> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
>>>> 	at
>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
>>>> 	at
>>>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> 	at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:597)
>>>> 	at
>>>> org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
>>>> 	at
>>>> org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
>>>> 	at
>>>> org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
>>>> 	at
>>>> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
>>>> 	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
>>>> Caused by: java.net.SocketException: Broken pipe
>>>> 	at java.net.SocketOutputStream.socketWrite0(Native Method)
>>>> 	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
>>>> 	at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
>>>> 	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
>>>> 	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:104)
>>>> 	at
>>>> org.apache.jackrabbit.mk.util.ChunkedOutputStream.writeChunk(ChunkedOutputStream.java:119)
>>>> 	at
>>>> org.apache.jackrabbit.mk.util.ChunkedOutputStream.write(ChunkedOutputStream.java:100)
>>>> 	at org.apache.jackrabbit.mk.util.IOUtils.copy(IOUtils.java:325)
>>>> 	at
>>>> org.apache.jackrabbit.mk.client.HttpExecutor.execute(HttpExecutor.java:112)
>>>> 	at org.apache.jackrabbit.mk.client.Request.execute(Request.java:118)
>>>> 	at org.apache.jackrabbit.mk.client.Request.getString(Request.java:139)
>>>> 	at org.apache.jackrabbit.mk.client.Client.write(Client.java:351)
>>>> 	... 57 more
>>>>
>>>>
>>>> Michael
>>>
>

Mime
View raw message