[ 
https://issues.apache.org/jira/browse/IGNITE-1699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Veselovsky updated IGNITE-1699:
------------------------------------
    Description: 
Test 
IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling
 sometimes fails with the below error.

I see the following problems in this method:
1) exeption (if any) should better contain the actual process exit code if it 
was different from the expected one;
2) assertion on zero exit code ( 
org/apache/ignite/internal/util/GridJavaProcess.java:197) of the killing 
command is not always correct , e.g. on Unix systems killing of an unexisting 
process returns 1. So, if the process finished before kill was invoked, the 
method will fail with assertion error.

{code}
java.lang.AssertionError: Process killing was not successful
    at 
org.apache.ignite.internal.util.GridJavaProcess.kill(GridJavaProcess.java:197)
    at 
org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.interactWithClient(IpcSharedMemoryCrashDetectionSelfTest.java:343)
    at 
org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling(IpcSharedMemoryCrashDetectionSelfTest.java:91)
    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 junit.framework.TestCase.runTest(TestCase.java:176)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:1658)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:112)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest$4.run(GridAbstractTest.java:1596)
{code}

  was:
Test 
IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling
 sometimes fails with the nelow error.

I see the following problems in this method:
1) exeption (if any) should better contain the actual process exit code if it 
was different from the expected one;
2) assertion on zero exit code ( 
org/apache/ignite/internal/util/GridJavaProcess.java:197) of the killing 
command is not always correct , e.g. on Unix systems killing of an unexisting 
process returns 1. So, if the process finished before kill was invoked, the 
method will fail with assertion error.

{code}
java.lang.AssertionError: Process killing was not successful
    at 
org.apache.ignite.internal.util.GridJavaProcess.kill(GridJavaProcess.java:197)
    at 
org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.interactWithClient(IpcSharedMemoryCrashDetectionSelfTest.java:343)
    at 
org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling(IpcSharedMemoryCrashDetectionSelfTest.java:91)
    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 junit.framework.TestCase.runTest(TestCase.java:176)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:1658)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:112)
    at 
org.apache.ignite.testframework.junits.GridAbstractTest$4.run(GridAbstractTest.java:1596)
{code}


> Method org.apache.ignite.internal.util.GridJavaProcess#kill should be more 
> reliable.
> ------------------------------------------------------------------------------------
>
>                 Key: IGNITE-1699
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1699
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Ivan Veselovsky
>
> Test 
> IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling
>  sometimes fails with the below error.
> I see the following problems in this method:
> 1) exeption (if any) should better contain the actual process exit code if it 
> was different from the expected one;
> 2) assertion on zero exit code ( 
> org/apache/ignite/internal/util/GridJavaProcess.java:197) of the killing 
> command is not always correct , e.g. on Unix systems killing of an unexisting 
> process returns 1. So, if the process finished before kill was invoked, the 
> method will fail with assertion error.
> {code}
> java.lang.AssertionError: Process killing was not successful
>     at 
> org.apache.ignite.internal.util.GridJavaProcess.kill(GridJavaProcess.java:197)
>     at 
> org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.interactWithClient(IpcSharedMemoryCrashDetectionSelfTest.java:343)
>     at 
> org.apache.ignite.internal.util.ipc.shmem.IpcSharedMemoryCrashDetectionSelfTest.testIgfsServerClientInteractionsUponClientKilling(IpcSharedMemoryCrashDetectionSelfTest.java:91)
>     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 junit.framework.TestCase.runTest(TestCase.java:176)
>     at 
> org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:1658)
>     at 
> org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:112)
>     at 
> org.apache.ignite.testframework.junits.GridAbstractTest$4.run(GridAbstractTest.java:1596)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to