accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Keith Turner (JIRA)" <j...@apache.org>
Subject [jira] [Created] (ACCUMULO-2400) race condition in ExamplesIT
Date Mon, 24 Feb 2014 21:43:20 GMT
Keith Turner created ACCUMULO-2400:
--------------------------------------

             Summary: race condition in ExamplesIT
                 Key: ACCUMULO-2400
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2400
             Project: Accumulo
          Issue Type: Bug
         Environment: 6395840418046d8b3a923a4bfb3e4ba486c5dcd0
            Reporter: Keith Turner
             Fix For: 1.6.0


Saw ExamplesIT fail with the following exception.  Looking at the code I think there is a
race condition.  The test calls the MAC.exec() function to create a process and then reads
from stdout of the process.  The MAC exec function starts a background thread to read from
stdout.  If this background thread reads stdout before the test I think it will fail in the
following way.  Probably need to fix everywhere MAC exec is used in this way.  Could either
read from the file MAC creates or pass an option to MAC.exec() to not start the background
thread.

{noformat}
java.io.IOException: Stream closed
	at java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:162)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:325)
	at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
	at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
	at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
	at java.io.InputStreamReader.read(InputStreamReader.java:184)
	at java.io.BufferedReader.fill(BufferedReader.java:154)
	at java.io.BufferedReader.readLine(BufferedReader.java:317)
	at java.io.BufferedReader.readLine(BufferedReader.java:382)
	at org.apache.accumulo.test.functional.ExamplesIT.testClasspath(ExamplesIT.java:172)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
{noformat}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message