ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Ignatenko (JIRA)" <j...@apache.org>
Subject [jira] [Created] (IGNITE-9585) Error message sometimes refers nonexisting log file when remote node fails to start
Date Thu, 13 Sep 2018 15:08:00 GMT
Oleg Ignatenko created IGNITE-9585:

             Summary: Error message sometimes refers nonexisting log file when remote node
fails to start
                 Key: IGNITE-9585
                 URL: https://issues.apache.org/jira/browse/IGNITE-9585
             Project: Ignite
          Issue Type: Bug
    Affects Versions: 2.6
            Reporter: Oleg Ignatenko

Teamcity build logs sometimes refer to remote node log files that aren't present in build
artifacts ([example|https://ci.ignite.apache.org/viewLog.html?buildTypeId=IgniteTests24Java8_StartNodes&buildId=1849937&branch_IgniteTests24Java8_StartNodes=%3Cdefault%3E]).

I managed to reproduce this on my machine (details below) and it looks like typically the
root cause of this is error message from [StartNodeCallableImpl|https://github.com/apache/ignite/blob/master/modules/ssh/src/main/java/org/apache/ignite/internal/util/nodestart/StartNodeCallableImpl.java]
referring readers to file that doesn't exist (and it wasn't even created to start with).
            return new ClusterStartNodeResultImpl(spec.host(), false, "Remote node could not
start. " +
                "See log for details: " + scriptOutputPath);
This is quite painful when one tries to investigate node launching failures because the misleading
message causes one to waste time investigating the problem that doesn't exist (it appears
as if log file was there but somehow disappeared for some mysterious reason).
To reproduce the issue locally one can do as follows: first, modify file [start-nodes-custom.sh|https://github.com/apache/ignite/blob/master/modules/core/src/test/bin/start-nodes-custom.sh]
by replacing {{ignite.sh}} with the name of script that doesn't exist, eg {{noignite.sh}}.
After that, execute unit test [IgniteProjectionStartStopRestartSelfTest|https://github.com/apache/ignite/blob/master/modules/ssh/src/test/java/org/apache/ignite/internal/IgniteProjectionStartStopRestartSelfTest.java]
and study its results and logs.

You will find that {{testCustomScript}} fails - which is expected because name of the script
intended to be executed has changed to one that doesn't exist. Also you will find that log
file for respective node hasn't been created - which is also expected because shell command
fails before creating it. But in the same time test log will refer to mentioned file as if
it exists.

This message was sent by Atlassian JIRA

View raw message