GLYCAM-Web / gmml

Glycam Molecular Modeling Library
GNU Lesser General Public License v3.0
4 stars 10 forks source link

Test 019 segfaults sometimes #169

Open gitoliver opened 9 months ago

gitoliver commented 9 months ago
######## GMML TESTS COMPLETED ########
Required tests: 22
Passed tests:   21
Failed tests:   1
Time taken: 34 seconds
######################################

!!! OUTPUT OF THE 1 GMML TEST(S) THAT FAILED !!!

Testing 019.test.newPDBClass.cpp... ~30 seconds. ./019.test.newPDBClass.sh: line 14:  1455 Segmentation fault      (core dumped) ./newPdbClass tests/inputs/"${file}" > 019.output.txt
Test FAILED!. 019.output.txt different from tests/correct_outputs/019.4mbz.pdb-output.txt
 Compare using diff

Exit Code: 1

!!! FINISHED PRINTING FAILED TESTS !!!

webdev@oliver-gw-grpc-delegator:/programs/gems/gmml/tests$ bash 019.test.newPDBClass.sh 
Testing 019.test.newPDBClass.cpp... ~30 seconds. Test passed.
Exit Code: 0
019.test.newPDBClass.sh: line 32: return: can only `return' from a function or sourced script
webdev@oliver-gw-grpc-delegator:/programs/gems/gmml/tests$ 

This happens on bare metal too, and so far only when running with other tests as a batch. Re-running the test by itself, or in a batch often has everything pass. Given the intermittent behavior, and that it only shows up when running as a batch of tests, I suspect the threading code for bond by distance has a fatal flaw.

gitoliver commented 3 months ago

I've now seen this when running tests in the grpc delegator:

Testing 000.buildBySequence.cc... In file included from /programs/gems/gmml/includes/gmml.hpp:164,
                 from tests/000.buildBySequence.cc:1:
/programs/gems/gmml/includes/Resolver/PdbPreprocessor/pdbpreprocessor.hpp:471:9: internal compiler error: Segmentation fault
  471 |         }
      |         ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-10/README.Bugs> for instructions.
Test FAILED!
 buildBySequence.pdb does not exist.
Exit Code: 1

At the same time I saw test 019 failing too:

Testing 019.test.newPDBClass.cpp... ~30 seconds. ./019.test.newPDBClass.sh: line 14:  1582 Segmentation fault      (core dumped) ./newPdbClass tests/inputs/"${file}" > 019.output.txt
Test FAILED!. 019.output.txt different from tests/correct_outputs/019.2n7b.pdb-output.txt
 Compare using diff

Exit Code: 1
vraid commented 2 months ago

This has been resolved in gmml2 here https://github.com/GLYCAM-Web/gmml2/commit/c4005e8e8922c7f02c18352c88af3693159deb70 As for gmml, well, i absolve myself of responsibility.