Skip to content
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

SUT does not stop when asked #82

Open
eostermueller opened this issue Oct 2, 2022 · 2 comments
Open

SUT does not stop when asked #82

eostermueller opened this issue Oct 2, 2022 · 2 comments

Comments

@eostermueller
Copy link
Owner

eostermueller commented Oct 2, 2022

The attached three threaddumps (nearly identical) were captured after removing the checkbox in the GUI for the SUT....so the SUT should have stopped when removing that check box, but it did not.

Manually, I executed this:
C:\Users\eoste>taskkill /PID:12708 ERROR: The process with PID 12708 could not be terminated. Reason: This process can only be terminated forcefully (with /F option).
Need to compare the attached to threaddumps captured in the easy-to-reproduce scenario.
When thread dumps are captured prior to when it DOES stop correctly.

One possible cause is that running a load test somehow makes it harder to stop.

01.txt
02.txt
03.txt

This gets a little weirder.
After I tried to windows taskkill WITHOUT the force flag, detailed above, I added the force flag and the SUT died.
So I thought, perhaps I just need to add the force flag in OsUtils 'kill' code...but I looked and the force flag is already there.
So it seems that the process died after the code submitted a kill, I submitted a kill from the command line WITHOUT the force, then I resumitted the kill from the command line.

Source code, showing the kill parameter is in place for both linux and Windows:
https://github.com/eostermueller/performanceAnalysisWorkbench/blob/master/backend/src/main/java/com/github/eostermueller/snail4j/OsUtils.java#L218

@eostermueller
Copy link
Owner Author

I captured these three thread dumps (01b.txt, 02b.txt, 03b.txt) before adding the check mark to stop the SUT....and the SUT stopped completely.
There are MANY differences to analyze between 01.txt (jvm wouldn't shut down) and 01b.txt (jvm shut down correctly).

03b.txt
01b.txt
02b.txt

@eostermueller
Copy link
Owner Author

One other nagging thing to explore. In the first example when the JVM was shut down, I was probably running snail4j/build/postInstallDepsRefresh.sh WHILE the SUT was up and running....that's not a usual use case, trying to OVERWRITE the %USERPROFILE%/.snail4j/sutApp while the code in the same folder is UP AND RUNNING!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant