plug icon indicating copy to clipboard operation
plug copied to clipboard

Crashed plugins cause host application to hang

Open elliotmr opened this issue 5 years ago • 1 comments

If the plugin panics during operation it can cause the host application to hang in the SendRecv() function. There should be a looped timeout on the receive that check to ensure that the sub-process is still running. Ideally, the function would return the panic message as an error if the sub-process dies.

elliotmr avatar Sep 11 '20 20:09 elliotmr

Hint: setting a SetReadDeadline before the Read call in transport.go should make the timeout easy, then it just needs to be looped in the SendRecv function if the error is a timeout and the subprocess is still running.

elliotmr avatar Sep 11 '20 20:09 elliotmr