NationalGenomicsInfrastructure / piper

A genomics pipeline build on top of the GATK Queue framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Piper return code

vezzi opened this issue · comments

I am not entirely sure but I noticed this behaviour in piper:
I run piper through the ngi_pipeline, if the ngi_pipeline fails on its own then the piper instance continue to run probably because no ctr+c signal is sent (and this is fine).

The problem is that if I ctr+c the ngi_pipeline then piper captures the signal and exist. However, in this case the return code that he gives is "0"

Is this possible? Should I explore this more or you have some explanation for this behaviour?

The return code is important pipeline side to know if we can consider a run fail or not

I'll look into this.

Well, now I've done some thinking about this, and I think that this should be the expected behavior. If you send a exit signal to the application and it finished gracefully (as Piper will normally do) it should give you a 0 exit flag, because there was really no error. It should only return a non-zero exit flag if there was an error - that is the pipeline it self failed or the jobs in it failed. Does that sound reasonable to you?

Yes it is.
I have already worked around this "non problem" checking for the existence of the results. If no result is present then we will set the run to fail