Skip to content
Christopher Neely edited this page Sep 7, 2021 · 10 revisions

Run into some trouble? This wiki page describes some common issues that may occur when using MetaSanity.

Q: I am upgrading from the Docker installation to the Conda installation. What do I need to know?

A: MetaSanity will no longer provide updates to its Docker installation. Users are encouraged to update their version.

See the installation instructions for more information on installing/updating your MetaSanity installation.

The Conda version of MetaSanity includes several updates to dependency programs. PSortB is no longer packaged with MetaSanity. Users will need to download this software if they wish to use it.

However, MetaSanity's core functionality remains unchanged.

Q: Can I run MetaSanity v1.3.0 using old results?

A: In most cases, there will be no difference between the Docker output and the current Conda output.

Currently, the only exception is VirSorter. For VirSorter, the Conda version's output is different than the Docker version. This will affect BioMetaDB users who have written scripts that use VirSorter output.

In general, we do not recommend running the Conda version of MetaSanity on results that were generated by the Docker version.

Q: Why does the program seem to stall during the initial sequence reformatting?

A: Parsing fasta files becomes incredibly slow when the individual fasta records are very long (>15 MBp). Consider splitting very long records into smaller sequences - for example, by breaking scaffolds. This slowdown will be addressed in the next update.

Q: Why do the names of my fasta sequences get changed?

A: Certain annotation software suites require fasta ids that are ≤ 20 characters long. If this is an issue, users are advised to adjust fasta record ids prior to running MetaSanity. Note that descriptions are also omitted by default. The next update will allow for ids of any length and will integrate initial descriptions into output fasta records.

Q: I created a config file and tried to run FuncSanity, but not all of the pipe sections in my config file ran properly. What happened?

A: Two different kinds of errors may occur from the config file:

  1. An error message regarding a PATH variable prints to the screen. This issue only occurs on the source code installation (or if PATH variables were modified in the Docker installation), and is due to a program not existing for the specified variable. Use the bash command which [program_name] to identify the proper location of the PROGRAM that failed and try again.
  2. A pipe does not run. If a required section is missing from a particular pipe section of the config file, then the pipe will not run. The remaining valid pipe sections will be used to create the annotation pipeline. Ensure that all portions of the pipe sections are present and try again (see the sample config files that are packaged with this installation).

Q: CheckM failed when I ran PhyloSanity, but its database location is correctly set in my installation. It seems to stop midway through - why?

A: CheckM allows for multithreading, and users must take care to set the number of threads they will launch to be less than or equal to the number of genomes they plan to analyze. Users should also be wary when using pplacer_threads, as these increase the overall memory footprint tremendously.

Q: I completed the FuncSanity pipeline and attempted to generate summaries of my results, but I only got output to the screen. What happened?

A: Most likely you did not provide a table name when you requested the summary. The SUMMARIZE commands print database table metadata to screen by default. Ensure that you pass -t <table-name> in your SUMMARIZE command to save tsv and fasta files.

Q: I ran FuncSanity with the --prokka flag, but I got a bunch of errors and the pipeline crashed. What could be the issue?

A: Check that the PROKKA section of your pipeline's config file is not missing or commented out. If using PROKKA gene calls in the remaining downstream analysis, then users must ensure that the corresponding section is valid in the config file.