io7m-com/ervilla

Consider stopping containers with `kill`

io7m opened this issue · 0 comments

io7m commented

Currently, the supervisor uses podman stop to stop containers. This means that they (rarely) survive the close attempt. The supervisor should give them no choice and use podman kill to destroy the processes.

This sometimes results in:

java.io.IOException: Container process Process[pid=3558105, exitValue="not exited"] is still alive!

	at com.io7m.ervilla.native_exec@0.0.5/com.io7m.ervilla.native_exec.internal.EContainerSupervisor$EContainer.stop(EContainerSupervisor.java:919)
	at com.io7m.northpike.tests@0.0.1-SNAPSHOT/com.io7m.northpike.tests.containers.NPTestContainers$NPIdstoreFixture.reset(NPTestContainers.java:269)
	at com.io7m.northpike.tests@0.0.1-SNAPSHOT/com.io7m.northpike.tests.user_client.NPUserClientTest.setup(NPUserClientTest.java:142)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)