xiaochuanle / MECAT

MECAT: an ultra-fast mapping, error correction and de novo assembly tool for single-molecule sequencing reads
107 stars 26 forks source link

Far too large pull - grid/slurm support, checkpointing, extra features #73

Open flowers9 opened 5 years ago

flowers9 commented 5 years ago

In brief, this pull provides basic support for grid/slurm (and possibly other remote queueing packages) with the -G and -S options (it supports job queueing and tracking of job completion). It does checkpointing for mecat2pw and mecat2cns, allowing restarting of failed jobs (but only for can runs, not m4). It also allows correction against (in mecat2pw) and of (in mecat2cns) a subset of the given reads with the -R option.

The -k option of mecat2cns has been changed to default to zero rather than 10, with the assumption that a quicker partitioning is better (and setting -k to zero is now the same as using a negative value, rather than creating an infinite loop).

It also changes index_t to idx_t (to avoid a solaris namespace conflict) and arbitrarily changes to the code style to one I can read more easily in code I needed to make changes to.

There was a small bug fix to findErrors.C as well to prevent crashes from chunks with no matching reads.