marbl/parsnp

Not able to detect the target genomes to run

Opened this issue · 12 comments

I am using the command
parsnp -g ../ref/AANRFQ010000001.1.gbk -d ./tmp_seq -p 8

but in spite of having everything in place, reference genome in ref/ folder, and all target .fasta files in ./tmp_seq folder, I am getting the following error.
All .fasta files have read permissions, what is the reason that parsnp is not recognizing them??
Please help to resolve
|--Parsnp v1.2--|
For detailed documentation please see --> http://harvest.readthedocs.org/en/latest


SETTINGS:
|-refgenome: ../ref/AANRFQ010000001.1.gbk.fna
|-aligner: libMUSCLE
|-seqdir: ./tmp_seq
|-outdir:
/SNP_runs/hc3/parsnp/P_2020_06_16_163916475036
|-OS: Linux
|-threads: 8


<>

-->Reading Genome (asm, fasta) files from ./tmp_seq..
|->[OK]
-->Reading Genbank file(s) for reference (.gbk) ../ref/AANRFQ010000001.1.gbk..
|->[OK]
Parsnp requires 2 or more genomes to run, exiting
[] ../ref/AANRFQ010000001.1.gbk.fna

Hi @Nits11, looks like you are still running v1.2. We have had a new release v1.5 with some bug fixes, updated binaries and better error checks. Could you please download v1.5 here and check if it runs. If there are still issues then we'll be happy to help with any questions

Thanks for responding so promptly.

I have installed parsnp on linux using

sudo apt install parsnp and indeed it got me version 1.2

How to fix that . I have downloaded the the latest version from the link you shared , but not sure how to overwrite my earlier version installation

Thanks for responding

Nits

@Nits11 If you have download the tar.gz file, just cd into the folder and use the parsnp binary present there - ./parsnp -h to view the CL arguments.

P.S you can remove apt installed software by sudo apt-get remove “package-name”

I tried the same, but unfortunately, it is still giving error
I am passing the command
./parsnp -g ../ref/AA.gbk -d ../seqs -c -x -p 6
and getting error:
Traceback (most recent call last):
File "./parsnp", line 603, in
if shutil.which(exe) is None:
AttributeError: 'module' object has no attribute 'which'

I am getting same error, even when I am running the given example ref and genome data with command:
./parsnp -g examples/mers_virus/ref/Engand1.gbk -d examples/mers_virus/genomes -p 6

Which version of python are you running?

I updated to latest version 1.5 and still I am getting following error
07:07:05 - INFO - <>
07:07:10 - INFO - Running Parsnp multi-MUM search and libMUSCLE aligner...
07:09:02 - INFO - Running PhiPack on LCBs to detect recombination...
Traceback (most recent call last):
File "/apps/parsnp/1.5.0/bin/parsnp", line 1277, in
result = pool.map_async(parallelPhiWrapper,tasks).get(sys.maxsize)
File "/apps/parsnp/1.5.0/lib/python3.8/multiprocessing/pool.py", line 765, in get
self.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/multiprocessing/pool.py", line 762, in wait
self._event.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/threading.py", line 558, in wait
signaled = self._cond.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/threading.py", line 306, in wait
gotit = waiter.acquire(True, timeout)
OverflowError: timestamp too large to convert to C _PyTime_t

I ran it on server ,where when I loaded it python automatically changed with a message:
module load parsnp/1.5.0

Lmod is automatically replacing "python/2.7.10" with "parsnp/1.5.0".

I tested it with different sample sets , but the error is same

@Nits11 Sorry about these issues. I haven't seen this error before. Are these errors from the provided examples in the repo?

What OS are you running on? There seem to be some issues w/ timing in python in WSL

@Nits11 Think I got it figured out. Try the latest release package or building from source to test it out.
It will be a couple days until the bugfix makes it to bioconda

Thanks for pointing out.
I reinstalled and it seems it is running fine.
But I am facing a different kind of error. My input data are assembled genomes and are of not exact same sequence length. I am getting the following error:

SETTINGS:
|-refgenome: ../references/CP006053.gbk
|-genomes:
../processed/PNUSAS017054.fasta
../processed/PNUSAS031694.fasta
...34 more file(s)...
../processed/PNUSAS015060.fasta
../processed/PNUSAS010610.fasta
|-aligner: muscle
|-outdir: /parsnp/P_2020_06_21_155413308427
|-OS: Linux
|-threads: 2


15:54:14 - INFO - <>
15:54:18 - INFO - Running Parsnp multi-MUM search and libMUSCLE aligner...
15:55:12 - CRITICAL - The following command failed:
>>$ /apps/parsnp/1.5.0/bin/bin/parsnp_core /parsnp/P_2020_06_21_155413308427/parsnpAligner.ini
Please veryify input data and restart Parsnp.
If the problem persists please contact the Parsnp development team.

  STDOUT:
  b'0\nCP006053.gbk.fna,Len:4730612,GC:52.2493\nPNUSAS017054.fasta,Len:4679388,GC:52.3461\nPNUSAS031694.fasta,Len:4687517,GC:52.273\nPNUSAS028554.fasta,Len:4682929,GC:52.2647\nPNUSAS014728.fasta,Len:4685991,GC:52.2614\nPNUSAS014963.fasta,Len:4683578,GC:52.2659\nPNUSAS017028.fasta,Len:4678695,GC:52.3473\nPNUSAS043549.fasta,Len:4686302,GC:52.2625\nPNUSAS028552.fasta,Len:4741643,GC:52.3174\nPNUSAS028558.fasta,Len:4685149,GC:52.265\nPNUSAS016145.fasta,Len:4793017,GC:52.2605\nPNUSAS031706.fasta,Len:4682031,GC:52.2652\nPNUSAS031703.fasta,Len:4681942,GC:52.266\nPNUSAS021429.fasta,Len:4685994,GC:52.2823\nPNUSAS018348.fasta,Len:4689229,GC:52.2767\nPNUSAS010613.fasta,Len:4687916,GC:52.2639\nPNUSAS018347.fasta,Len:4695240,GC:52.266\nPNUSAS038711.fasta,Len:4684361,GC:52.2637\nPNUSAS027602.fasta,Len:4686061,GC:52.264\nPNUSAS011529.fasta,Len:4687412,GC:52.2756\nPNUSAS016458.fasta,Len:4681980,GC:52.2815\nPNUSAS016951.fasta,Len:4678674,GC:52.3298\nPNUSAS027064.fasta,Len:4681709,GC:52.2661\nPNUSAS025146.fasta,Len:4687579,GC:52.2657\nPNUSAS016332.fasta,Len:4682792,GC:52.2787\nPNUSAS037758.fasta,Len:4681904,GC:52.2635\nPNUSAS043553.fasta,Len:4689479,GC:52.2546\nPNUSAS031702.fasta,Len:4681530,GC:52.2655\nPNUSAS054377.fasta,Len:4699130,GC:52.3607\nPNUSAS044528.fasta,Len:4684789,GC:52.2705\nPNUSAS043548.fasta,Len:4683876,GC:52.2649\nPNUSAS020189.fasta,Len:4686695,GC:52.2677\nPNUSAS018358.fasta,Len:4682629,GC:52.3307\nPNUSAS011460.fasta,Len:4683622,GC:52.2636\nPNUSAS035540.fasta,Len:4682576,GC:52.2648\nPNUSAS045298.fasta,Len:4683037,GC:52.2717\nPNUSAS027047.fasta,Len:4687263,GC:52.2633\nPNUSAS015060.fasta,Len:4683726,GC:52.2644\nPNUSAS010610.fasta,Len:4687140,GC:52.2613\n        Finished processing input sequences, elapsed time: 5 seconds\n\n                 compressed suffix graph construction elapsed time: 3 seconds\n\n'
  
  STDERR:
  b'\n*****************************************************\n\nparsnpAligner:: rapid whole genome SNP typing\n\n*****************************************************\n\nParSNP: Preparing to construct global multiple alignment framework\n\nPreparing to verify and process input sequences...\nSearching for initial MUM anchors...\n\n        Constructing compressed suffix graph...\n        Performing initial search for exact matches in the sequences...\n'

** While for another very small query sample, I am getting the previously posted error on running the command:
parsnp -g ../references/NC020307.gbk -d ../processed/ -p 2 -c -x

|--Parsnp v1.5--|
For detailed documentation please see --> http://harvest.readthedocs.org/en/latest
16:10:03 - INFO -


SETTINGS:
|-refgenome: ../references/NC020307.gbk
|-genomes:
../processed/PNUSAS044936.fasta
../processed/PNUSAS032918.fasta
...9 more file(s)...
../processed/PNUSAS030964.fasta
../processed/PNUSAS043536.fasta
|-aligner: muscle
|-outdir: /parsnp/P_2020_06_21_161003157901
|-OS: Linux
|-threads: 2


16:10:03 - INFO - <>
16:10:03 - INFO - Running Parsnp multi-MUM search and libMUSCLE aligner...
16:10:41 - INFO - Running PhiPack on LCBs to detect recombination...
Traceback (most recent call last):
File "/apps/parsnp/1.5.0/bin/parsnp", line 1277, in
result = pool.map_async(parallelPhiWrapper,tasks).get(sys.maxsize)
File "/apps/parsnp/1.5.0/lib/python3.8/multiprocessing/pool.py", line 765, in get
self.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/multiprocessing/pool.py", line 762, in wait
self._event.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/threading.py", line 558, in wait
signaled = self._cond.wait(timeout)
File "/apps/parsnp/1.5.0/lib/python3.8/threading.py", line 306, in wait
gotit = waiter.acquire(True, timeout)
OverflowError: timestamp too large to convert to C _PyTime_t

Please help to resolve the issue.
Is it an installation issue? or
Should the input query set be modified in some specific way to avoid any error?

wrt the second error, that should be fixed in the most recent update. Where are you installing from? The culprit line File "/apps/parsnp/1.5.0/bin/parsnp", line 1277, in result = pool.map_async(parallelPhiWrapper,tasks).get(sys.maxsize) has been changed w/ the bugfix I pushed.

wrt the first error, I am not immediately sure what is going on. It looks like the parsnp aligner is running fine (there is nothing in the output message that indicates an error) but it is still returning non-zero...

Any chance you could supply the input data?