Gaius-Augustus / Augustus

Genome annotation with AUGUSTUS
http://bioinf.uni-greifswald.de/webaugustus/
281 stars 108 forks source link

SIGSEGV during Augustus PB step on cat test data #28

Closed laninsky closed 5 years ago

laninsky commented 5 years ago

Hi folks,

Apologies if I've missed something dumb during installation here, but I'm a bit stuck. I'm running cat on a slurm system, but using a single machine just to try and minimise complications. I seem to be running into issues with my Augustus installation. It seems to get through the Augustus CGP step fine, but then fails with a SIGSEGV on the Augustus PB step. I originally posted this issue there (https://github.com/ComparativeGenomicsToolkit/Comparative-Annotation-Toolkit/issues/118), but @ifiddes-10x suggested posting here.

augustus --softmasking=1 --allow_hinted_splicesites=atac --alternatives-from-evidence=1 --UTR=1 --hintsfile=/nesi/nobackup/uoo02424/bin/temp_test_work_dir/toil-870fd876-08a7-4827-89c8-fd670c9d0bd2-a301ba27-672f-4856-ba5a-b6ec53983f3a/tmpsSFYBW/98d53963-ea74-4416-a1f3-538e1faac276/tmphdATE8.tmp --extrinsicCfgFile=/nesi/nobackup/uoo02424/bin/temp_test_work_dir/toil-870fd876-08a7-4827-89c8-fd670c9d0bd2-a301ba27-672f-4856-ba5a-b6ec53983f3a/tmpsSFYBW/98d53963-ea74-4416-a1f3-538e1faac276/tmpvtGP8k.tmp --species=human --/augustus/verbosity=0 --predictionStart=-0 --predictionEnd=-0 /scale_wlg_nobackup/filesets/nobackup/uoo02424/bin/temp_test_work_dir/toil-870fd876-08a7-4827-89c8-fd670c9d0bd2-a301ba27-672f-4856-ba5a-b6ec53983f3a/tmpsSFYBW/98d53963-ea74-4416-a1f3-538e1faac276/wbn033.40237.3604811865.tmp

Running the command outside of cat also gives an immediate Segmentation Fault. From previous issues I thought filename length could be an issue, so I copied out the offending files and renamed them (also attached here with the modified names), but still ran into the same issue running it outside of cat:

augustus --softmasking=1 --allow_hinted_splicesites=atac --alternatives-from-evidence=1 --UTR=1 --hintsfile=test/hintsfile.tmp --extrinsicCfgFile=test/extrinsicCfgFile.tmp --species=human --/augustus/verbosity=0 --predictionStart=-0 --predictionEnd=-0 test/input.tmp

extrinsicCfgFile.tmp.txt hintsfile.tmp.txt input.tmp.txt

@ifiddes-10x had no trouble running augustus with these files so I strongly suspect this might have something to do with our cluster architecture (RedHat)/dependencies but I'm not savvy enough to track it down. I followed the instructions for compiling Augustus CGP in this repository ('''b8ce1b0'''), and I'm using modules for Samtools (1.8) and bedtools (2.26.0). I've tried using both the boost/zlib/samtools modules and installing both of these from scratch, but am still getting the same outcome. Any help would be really appreciated. I did a gdb traceback and got the following in case it helps track down the issue:

#0  0x00002aaaaace1410 in boost::iostreams::detail::gzip_header::reset() ()
   from /lib64/libboost_iostreams.so.1.53.0
#1  0x000000000041e384 in gzip_header (this=0x7fffffff7c20)
    at /nesi/nobackup/uoo02424/bin/boost_install_1_67_0/include/boost/iostreams/filter/gzip.hpp:327
#2  boost::iostreams::basic_gzip_decompressor<std::allocator<char> >::basic_gzip_decompressor (this=0x7fffffff7c10, window_bits=<optimized out>,
    buffer_size=<optimized out>)
    at /nesi/nobackup/uoo02424/bin/boost_install_1_67_0/include/boost/iostreams/filter/gzip.hpp:736
#3  0x000000000041b9c9 in GBSplitter::GBSplitter (this=0x7fffffff8290,
    fname=...) at genbank.cc:542
#4  0x000000000041c2a2 in GBProcessor::GBProcessor (this=0x7fffffff8290,
    filename=...) at genbank.cc:27
#5  0x000000000040a69b in main (argc=12, argv=0x7fffffff8e88)
    at augustus.cc:141
laninsky commented 5 years ago

Hi folks - the cluster staff rebuilt Augustus and it is now working. I still am not sure why the local installation didn't work, but in case it is handy I'm going to paste the easybuild eb file for the cluster-wide installation here for other people who may be having trouble (although I believe they built off the website rather than the bleeding edge repository):

easyblock = 'ConfigureMake'
(END)
name = 'AUGUSTUS'
version = '3.3.2'

homepage = 'http://bioinf.uni-greifswald.de/augustus/'
description = "AUGUSTUS is a program that predicts genes in eukaryotic genomic sequences"

toolchain = {'name': 'gimkl', 'version': '2017a'}

source_urls = ['http://bioinf.uni-greifswald.de/augustus/binaries/']
sources = ['augustus-%(version)s.tar.gz']
patches = [
    '%(name)s-3.3_bamtools_includepath.patch',
    '%(name)s-3.3_no_symlinks_install.patch',
    '%(name)s-3.3_SAMtools.patch',
]

#checksums = [
#    'b5eb811a4c33a2cc3bbd16355e19d530eeac6d1ac923e59f48d7a79f396234ee',  # augustus-3.3.tar.gz
#    'cc48206918ca6fb75b55d3cd2870d6a139ba1ae10ea77e8c0d68eedd26142ddf',  # AUGUSTUS-3.3_bamtools_includepath.patch
#    'afaa0136d8a0d7d060a5597384b88267e17c9b3cc9b60b0faebc6eff03f7bce1',  # AUGUSTUS-3.3_no_symlinks_install.patch
#]

dependencies = [
    ('SAMtools', '1.8'),
    ('zlib', '1.2.11'),
    ('Boost', '1.61.0'),
    ('GSL', '2.3'),
    ('lp_solve', '5.5.2.5'),
    ('SuiteSparse', '4.5.4'),
    ('BamTools', '2.4.1'),
    ('SQLite', '3.16.2'),
]

skipsteps = ['configure']

prebuildopts = "make clean && "
buildopts = 'COMPGENEPRED=true SQLITE=true ZIPINPUT=true CXX="$CXX" LINK.cc="$CXX" CFLAGS="-std=c++11 -I$EBROOTSAMTOOLS/include/bam $CFLAGS -lpthread"'
installopts = 'INSTALLDIR=%(installdir)s'

sanity_check_paths = {
    'files': ['bin/augustus', 'bin/bam2hints', 'bin/espoca', 'bin/etraining',
              'bin/fastBlockSearch', 'bin/filterBam', 'bin/getSeq', 'bin/homGeneMapping', 'bin/joingenes',
              'bin/load2sqlitedb', 'bin/prepareAlign'],
    'dirs': ['config', 'scripts'],
}

modextrapaths = {'PATH': 'scripts'}
modextravars = {'AUGUSTUS_CONFIG_PATH': '%(installdir)s/config'}

moduleclass = 'bio'