Hi,

The only known to us case of improper execution of JVM shutdown hook thread 
in case of graceful JVM termination - is a JVM bug 
https://bugs.openjdk.java.net/browse/JDK-8154017 when main thread is left 
in interrupted state.
This was fixed in JDK 9 and backported to JDK 8, AFAIR to 8u162.
Thus please

   - make sure that JVM is gracefully terminated and not killed
   - check JVM version that you use
   - and state in which you leave main thread
   

On Monday, August 6, 2018 at 1:25:04 PM UTC+2, Dhruv Vinayak wrote:
>
> Even i'm facing the same issue for a java process. It seems the exec 
> file is getting corrupt in between or the java process is not getting 
> stopped cleanly. Just a thought, may be the corresponding thread which 
> handles writing data to exec file gets killed before the jvm is 
> shutdown properly. Not sure, its just a thought. May be experts here 
> can provide their view and solution. 
>
> Regards, 
> Dhruv Vinayak 
> On Mon, Aug 6, 2018 at 4:28 PM YEV <[email protected]> wrote: 
> > 
> > by attaching agent to the java process 
> > 
> > 
> javaagent:lib/jacocoagent.jar=destfile=/execs/jacoco.exec,output=file,append=true
>  
>
> > 
> > 
> > (multiple java process are executed - one after another, not in same 
> time) 
> > 
> > 
> > On Monday, 6 August 2018 13:32:01 UTC+3, Marc R. Hoffmann wrote: 
> >> 
> >> Hi, 
> >> 
> >> exec files are an internal binary format used by JaCoCo. If it does not 
> have a valid header this means 
> >> 
> >> a) it is not an exec file written by the JaCoCo agent (or a dump 
> command) or 
> >> b) the file was modified afterwards 
> >> 
> >> How do you create the exec file? 
> >> 
> >> Regards, 
> >> -marc 
> >> 
> >> 
> >> 
> >> On 2018-08-06 10:53, YEV wrote: 
> >> 
> >> My process created  an exec file while trying to generate a report from 
> it, getting an error: 
> >> 
> >> Exception in thread "main" java.io.IOException: Invalid execution data 
> file. 
> >> at 
> org.jacoco.core.data.ExecutionDataReader.readHeader(ExecutionDataReader.java:125)
>  
>
> >> at 
> org.jacoco.core.data.ExecutionDataReader.readBlock(ExecutionDataReader.java:109)
>  
>
> >> at 
> org.jacoco.core.data.ExecutionDataReader.read(ExecutionDataReader.java:92) 
> >> 
> >> 
> >> readHeader() method is expecting the first char to be  49344 
> >> But in my case it's 16191 - is there any meaning for this value? 
> >> 
> >> 
> >> 
> >> -- 
> >> You received this message because you are subscribed to the Google 
> Groups "JaCoCo and EclEmma Users" group. 
> >> To unsubscribe from this group and stop receiving emails from it, send 
> an email to [email protected]. 
> >> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jacoco/7ea84c9a-9a94-495a-a09c-0a2750f78632%40googlegroups.com.
>  
>
> >> For more options, visit https://groups.google.com/d/optout. 
> >> 
> >> 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "JaCoCo and EclEmma Users" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to [email protected]. 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jacoco/151491be-dd5f-480f-a188-d303869391ee%40googlegroups.com.
>  
>
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"JaCoCo and EclEmma Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jacoco/d6a23e65-5b0d-4c85-bd0a-fefb5c7b4071%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to