[ 
https://jira.codehaus.org/browse/SUREFIRE-906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christopher Mosher updated SUREFIRE-906:
----------------------------------------

    Attachment: SUREFIRE-906-0001.patch

I was able to fix it with the attached patch. It did not have to do with the 
output files. Instead it was a non-thread-safe issue with the properties 
object. Multiple threads in the parent (forking) process were accessing the 
same properties... the clone() call that was there must not have been enough to 
ensure thread safety.
                
> Sometimes get NullPointerException in forked process
> ----------------------------------------------------
>
>                 Key: SUREFIRE-906
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-906
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: process forking
>    Affects Versions: 2.13.0
>         Environment: Arch linux
>            Reporter: Christopher Mosher
>         Attachments: SUREFIRE-906-0001.patch
>
>
> (This is using the latest 2.13-SNAPSHOT)
> Using forkMode=perthread, the child processes sometimes abort with this 
> exception:
> java.lang.NullPointerException
>       at java.io.File.<init>(File.java:251)
>       at 
> org.apache.maven.surefire.booter.BooterDeserializer.deserialize(BooterDeserializer.java:61)
>       at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:63)
> It only happens sometimes.
> Using -X keeps the temp files, and looking at the file that's supposed to 
> pass the properties, I see that the file is truncated midway, causing the 
> exception.
> Possibly the parent process needs to *flush* the file after it writes to it 
> before is closes it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to