-
Notifications
You must be signed in to change notification settings - Fork 714
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Slim process dies without any error in log with FitNesse 20161106 #989
Comments
It turns out there was 'something' in the execution log. I found that the slim process died with exit code 98. Which I tracked in the source to mean that an exception occurred. Unfortunately the logging of the exception did not work (as I did not see that in the execution log). When I configure the connection to the slim process to be done on a random free port (i.e. I added My conclusion is that something is going wrong with the 'pipe based' connection between FitNesse and Slim. And logging on exception at the level does not end up in the execution log. |
Can we replay this scenario? |
I haven't been able to make a short sample that shows the problem. I have encountered the problem in multiple test sets in my current projects. All tests only show the problem on Windows 7 when started from the wiki (i.e. not when run on a build server using the jUnit runner on Linux). |
I just checked #995 is the same problem as this issue. Adding the |
On Windows 7, IBM JVM 7 64bit, or JRE 8 bundled with IntelliJ 2016.3, http://localhost:8001/FitNesse.SuiteAcceptanceTests.SuiteSlimTests.MultiByteCharsInSlim shows this problem. Adding !define slim.port {0} to .FitNesse.SuiteAcceptanceTests.SuiteSlimTests fixes the problem and makes the test green. |
Gonna do that right away on Saturday night so I wont have to remember until Monday... |
I believe the problem comes from the new 'default usage of console input/output' to communicate between wiki and Slim. On Windows the console does not support Unicode, at least not by default (see for instance http://stackoverflow.com/questions/20386335/printing-out-unicode-from-java-code-issue-in-windows-console). |
The Stackoverflow item suggested adding explicit encoding (in our case that would be UTF-8). The current implementation does not force file encoding on both ends. As an alternative we an URL-encode the whole lot. I would prefer that over using a socket on windows and a pipe on unix. |
Should fix unclebob#989.
Grr, unable to reproduce the problem on Windows 10. The multibyte test does cause stack traces in the console (when run from Edge), but the connection to Slim is not lost.
Using the FitNesse version with my pull requests does not show the stack trace.... |
Should fix unclebob#989.
Should fix unclebob#989.
I have a test, using Slim, which works with the previous version of 20160618. It also works with version 20161106 if I run it via jUnit using
FitNesseRunner
with Slim in-process. It does not work when started from the wiki (separate Java process for Slim), on Windows 7.I just get a message that the communication with the Slim process was lost, and in the execution log I see no indication of what went wrong. The Slim process just seems to die, without any error output.
A part of the test is executed, the SuiteSetUp and SetUp, but Slim dies on the real test page.
I've placed logging (to standard error) in my fixture code and I see that in the output of my SetUp pages, but the constructor of the fixture of the first (script) table never seems to be called. So I assume something happens in the code between the wiki and the Slim process before my fixture is even created.
I have no clue what the cause is, but processes stopping without any indication of what went wrong are very annoying....
The text was updated successfully, but these errors were encountered: