| ||||||||||||||||||||
This document discusses how to deal with one or more MUMmer alignments failing.
This document refers to release v5.0.8 and later. The corresponding MUMmer documentation is
v3 and
v4.
***Error - file is not executable: ext/mummer/mac/promerExecute: > chmod 755 ext/mummer/mac/promerExecute the program from the command line to make sure it works on you machine, e.g. >./ext/mummer/mac/promer USAGE: promer [options] <Reference> <Query> Try './ext/mummer/mac/promer -h' for more information.The above shows that the promer code will execute on my MacOS.
/data/seq_results/<project-name1>-to-<project-name2>/alignFor example, data/seq_results/demo_seq_to_demo_seq2/align> ls all.done demo_seq_cc.demo_seq2_f2.mum demo_seq_cc.demo_seq2_f1.mum demo_seq_cc.demo_seq2_f2.mum.done demo_seq_cc.demo_seq2_f1.mum.doneAll MUMmer files but the ".mum" are removed by ./symap -mumand then run the alignments. The log files are in the /logs/<project-name1>-to-<project-name2> directory. After the database is complete, these can be removed. However, sometimes SyMAP version updates require the project files to be reloaded and/or the synteny to be recomputed; if these files remain, the existing MUMmer files will be used, which saves a lot of time.
symap_5/ error.log # a SyMAP error will write its trace data into this file and list failed MUMmer logs/ <dbName>_LOAD.log # keeps track of data loaded or removed from database. <p1>-to-<p2>/ # one directory per project-to-project alignment <p1_cc.p2_f1>.log # MUMmer terminal output - one file per MUMmer process <p1_cc.p2_f2>.log # fn is n=1,2... for number of processes, e.g f2 is 2nd process symap.log # keeps most of the SyMAP output shown on the terminal for this A&S e.g. p1 = demo_seq, p2 = demo_seq2 symapDemo_load.log demo_seq_to_demo_seq2/ demo_seq_cc.demo_seq2_f1.log # MUMmer terminal output demo_seq_cc.demo_seq2_f2.log # MUMmer terminal output symap.log # SyMAP terminal output→ If an alignment is listed as failed in the →
If the error is not found in the log files or it is not clear, try the following:
ext/mummer/mac/promer -p data/seq_results/demo_seq_to_demo_seq2/align/demo_seq_cc.demo_seq2_f2.promer data/seq_results/demo_seq_to_demo_seq2/tmp/demo_seq2/demo_seq2_f2.fa data/seq_results/demo_seq_to_demo_seq2/tmp/demo_seq/demo_seq_cc.faThis shows
symap/error.log symap/logs/demo_seq_to_demo_seq2/symap.log symap/logs/demo_seq_to_demo_seq2/demo_seq_cc.demo_seq2_f2.log Out of memoryA MUMmer failure is typically from insufficient memory. The following error typically indicates a memory problem.Alignment program error code: 141 20220512|075853|6007| ERROR: mummer and/or mgaps returned non-zero, please file a bug reportor #..........................ERROR: mummer and/or mgaps returned non-zero, please file a bug report Alignment program error code: 1The error code will appear on the terminal, but not in the
See Concat for a description and timing results. Not-masked or Soft-maskedA memory problem can occur if the genome sequence is not masked or only soft-masked. Either: (1) change the sequence to hard-masked, or (2) set the SyMAP parameter
1: PREPARING DATAthe reason is probably that your machine does not have near enough memory as MUMmer could not even prepare the data. Try it again with unchecked One or more failsSometimes just one or a few of the alignment processes will fail. You will see a line such as:Error: Running command: /Users/cari/Workspace/symap_5/ext/mummer/mac/promer -p data/seq_results/demo_seq_to_demo_seq2/align/demo_seq_cc.demo_seq2_f2.promer data/seq_results/demo_seq_to_demo_seq2/tmp/demo_seq2/demo_seq2_f2.fa data/seq_results/demo_seq_to_demo_seq2/tmp/demo_seq/demo_seq_cc.fa A preferred way is to set CPUs to a low number if the genomes are large, that way, it will likely finish the first time. Using MUMmer4 from within SyMAPSometimes when MUMmer v3 fails, MUMmer v4 will work. MUMmer4 is included in SyMAP package with a fix to promer (make sure you get v5.0.8 or later). Enter the ext/mummer4 directory and follow the instructions in the README.My observations on MacOS indicate that MUMmer v4 takes more memory but less time than MUMmer v3.
Example of using mummer for loaded projects demo_seq and demo_seq2:
If you try this with demo_seq and demo_seq2, make sure there is no current alignment in the
database or disk for your project (e.g. Demo_seq has chr3 and chr5, demo_seq2 has chr1 and chr3; these will be compared separately against each other. Demo_seq is alphanumerically less than demo_seq2 , so it is first in the directory name but second in the command arguments (this is how SyMAP knows which project Chr3 belongs to). The commands are as follows: cd data/seq_results mkdir demo_seq_to_demo_seq2 mkdir demo_seq_to_demo_seq2/align touch demo_seq_to_demo_seq2/align/all.done cd ../.. ext/mummer/mac/promer data/seq/demo_seq2/sequence/chr1.seq data/seq/demo_seq/sequence/chr3.seq ext/mummer/mac/show-coords -dlkTH out.delta >chr1chr3.mum mv chr1chr3.mum data/seq_results/demo_seq_to_demo_seq2/align rm out.deltaThis would need to be repeated 3 more times for chr1chr5.mum, chr3chr3.mum, chr3chr5.mum (suggestion: put the commands in a script). The resulting align directory will have: all.done chr1chr3.mum chr1chr5.mum chr3chr3.mum chr3chr5.mumWhen symap is started and demo_seq and demo_seq2 selected, there will be a "A" in their cell; select it followed by To view the MUMmer parameters, see MUMmer parameters
cannot be opened because the developer cannot be verifiedSee MacOS External for the fix. Early versions of MacOS: The MacOS executables were compiled on a MacOS 10.15. They will not work on old versions such as MacOS 10.9. Try the following: cd ext/mummer mv mac mac_506 mv mac_pre506 mac cd ../muscle mv muscle muscle_506 mv muscle_pre506 muscleThese executables compiled on MacOS 10.9 may work on your Mac. | ||||||||||||||||||||
Email Comments To: symap@agcol.arizona.edu |