You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi @tedsuo,
First of all, I want to thank you for this library. I was looking for something like this and stumbled upon it.
While testing if the library suits my use case, I think I've found a bug or at least an unexpected behavior.
Let me share a sample of code that demonstrates it:
If I run this code in a shell, and start sending USR1 signal to the process, the process ends:
$ go run main.go
2019/08/17 21:10:00 start
2019/08/17 21:10:00 sleepRunner started
2019/08/17 21:10:04 got signal: user defined signal 1
2019/08/17 21:10:05 got signal: user defined signal 1
2019/08/17 21:10:05 finish: <nil># Notice, the process died after 5 seconds. If I don't send signals, it holds for 10 seconds, as required by duration.# while this process is running I send signal USR1 from the separate shell like this:
$ pkill -USR1 main
$ pkill -USR1 main
...
No matter what signal I set to be propagated via sigmon (I tried USR1, USR2, URG), parallel grouper always dies on the second signal.
I'm pretty sure the bug is somewhere in grouper package, because if I run runner instead of group, like rc := <-ifrit.Invoke(sigmon.New(runner, syscall.SIGUSR1)).Wait(), it doesn't die after the second signal.
PS.
Update: I'm using go version go1.12.7 darwin/amd64
The text was updated successfully, but these errors were encountered:
Hi @tedsuo,
First of all, I want to thank you for this library. I was looking for something like this and stumbled upon it.
While testing if the library suits my use case, I think I've found a bug or at least an unexpected behavior.
Let me share a sample of code that demonstrates it:
If I run this code in a shell, and start sending
USR1
signal to the process, the process ends:No matter what signal I set to be propagated via
sigmon
(I triedUSR1
,USR2
,URG
), parallel grouper always dies on the second signal.I'm pretty sure the bug is somewhere in
grouper
package, because if I runrunner
instead ofgroup
, likerc := <-ifrit.Invoke(sigmon.New(runner, syscall.SIGUSR1)).Wait()
, it doesn't die after the second signal.PS.
Update: I'm using
go version go1.12.7 darwin/amd64
The text was updated successfully, but these errors were encountered: