Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

t_coffee segmentation fault in biopython test cases #56

Open
emollier opened this issue Nov 1, 2022 · 2 comments
Open

t_coffee segmentation fault in biopython test cases #56

emollier opened this issue Nov 1, 2022 · 2 comments

Comments

@emollier
Copy link

emollier commented Nov 1, 2022

Greetings,

In the context of the debian project, we noticed that t_coffee version 13.45.0.4846264 is causing a test failure in biopython 1.79. It turns out that the following command:

$ t_coffee \
        -output clustalw_aln \
        -infile Fasta/fa01 \
        -outfile Fasta/tc_out.aln \
        -type protein \
        -outorder input \
        -gapopen -2 \
        -gapext -5

is causing a segmentation fault when run with the following ./Fasta/fa01 input file:

>AK1H_ECOLI/1-378
CPDSINAALICRGEKMSIAIMAGVLEARGH-N--VTVIDPVEKLLAVG-HYLESTVDIAE
STRRIAASRIP------A-DHMVLMAGFTAGN-EKGELVVLGRNGSDYSAAVLAACLRAD
CCEIWTDVNGVYTCDP-------------RQVPDARLLKSMSYQEAMELSY--FGAKVLH
PRTITPIAQFQIPCLIKNTGNPQAPGTL-IG--ASRDEDELP----VKGISNLN------
NMAMFSVSGP-GMKGMVGMAARVFAAMS-------RARISVVLITQSSSEYSISFCVPQS
DCVRAERAMLEEFY-----LELKEGLLEPLAVAERLAIISV-VGDGLRTLRGISAKF---
---FAALARANINIVAIA
>AKH_HAEIN/1-382
-----------------VEDAVKATIDCRGEKLSIAMMKAWFEARGY-S--VHIVDPVKQ
LLAKG-GYLESSVEIEESTKRVDAANIA--K-DKVVLMAGF---TAGNEKGELVLLGRNG
SDYSAAC-----------------LAACLGASVCEIWTDVDGVYTCDP--RLVPDARLLP
TLSYREAMELSYFGAKVIHPRTIGPLLPQNIPCVIKNTGNPSAPGSI-ID--GNVKSESL
Q----VKGITNLDNLAMFNVSGPGMQGM---VGMASRVFSAMSGAGISVILITQSSSEYS
---ISFCVPVKSAEVAKTVLETEFA-----NELNEHQLEPIEVIKDLSIISV-VGDGMKQ
AKGIAARF------FSALAQAN

Here is a backtrace of the affected portion; the intercepted sequence pointer S is NULL, which is probably the root of the segmentation fault:

#0  0x0000555555675e73 in seq2unique_name_seq (S=0x0) at util_lib/aln_convertion_util.c:2091
#1  0x000055555574d656 in read_seq_in_n_list (fname=0x55555598cad0, n=1, type=0x55555593dfb0 "", SeqMode=0x555555d45fb0 "ANY") at util_lib/util_constraints_list.c:2533
#2  0x0000555555659491 in batch_main (argc=15, argv=0x555555944230) at t_coffee_lib/t_coffee.c:4720
#3  0x000055555564f9a0 in main (argc=15, argv=0x7fffffffe128) at t_coffee_lib/t_coffee.c:179

You can lookup Debian Bug#1022570 for some further details, but I tried to gather the most relevant information here.

Have a nice day, :)
Étienne.

@nileshpatra
Copy link

/cc: @JoseEspinosa @cnotred @athbaltzis

@emollier
Copy link
Author

I tried to have a fresh look at this issue, and the bug seems to occur earlier in the code, before util_lib/util_constraints_list.c:2533, than what the trace reports. Sequence and alignments were already NULL, while I guess they were suppose to hold interesting information at this point:

(gdb) print S1
$6 = (Sequence *) 0x0
(gdb) print A
$7 = (Alignment *) 0x0
(gdb) print lname
$8 = 0x555555e5e2a1 "Fasta/fa01"

So I suppose something went wrong within main_read_aln perhaps.

Hope this helps; that issue is currently pulling a lot of packages out of the Debian 12 release in preparation. I welcome comments, as I'm not competent to decide whether this issue is grave enough to mandate a rollback of the t_coffee version, or if the test is about a fragile corner case normally not encountered in practice.

Thank you,
Étienne.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants