tseemann / nullarbor

:floppy_disk: :page_with_curl: "Reads to report" for public health and clinical microbiology
GNU General Public License v2.0
134 stars 37 forks source link

including low coverage sequences causes nullarbor to exit prematurely without error message #40

Open kwongj opened 8 years ago

kwongj commented 8 years ago

Nullarbor seemed to stop during assembly stage using spades - I couldn't see any error message. I found 2 sequences that were low coverage (9x and 17x), and when I re-ran nullarbor in the same folder using an edited Makefile excluding these two sequences, it ran as expected.

tseemann commented 7 years ago

Garbage in, garbage out.
Megahit would probably do ok with it.
Not really a problem I can solve, and yes, Makefiles don't handle this well :(

kwongj commented 7 years ago

Perhaps add an error message if the estimated coverage is too low?

tseemann commented 7 years ago

@kwongj that would be good, but a little tricky because of the makefile architecture. in fact most pipelines struggle with "business logic" in the middle of things.

there are a couple of ways it might be able to be handled.

when you say "error message" do you mean exit the pipeline or just print something?

kwongj commented 7 years ago

I think it would be reasonable to exit the pipeline, but at the very least, it would be nice to print something to stderr.

labrat9 commented 7 years ago

We have the same issue where nullarbor stopped at the assembly step. We had to manually invoke make several times to complete the pipeline. Our coverage is over 100 fold. We tried doing spades manually using cleaned reads generated by the trimmomatic step as well as uncleaned reads and the runs completed.

tseemann commented 7 years ago

@labrat9 You can run make -k which "keeps on going" despite any failed sections.

make itself has no capability to do "business logic". I would need to add in "helper scripts" which check things along the way and exit.

I should probably do this for coverage estimation at minimum.