Steven M Lewis, smlewi@gmail.com, Cyrus Biotechnology, Oct 2018
Sergey Lyskov, sergey.lyskov@gmail.com, Gray lab, Johns Hopkins University, Oct 2018
The PDB diagnostic was run on 229,967 PDB files. 215,542 files passed the test and 14,425 failed!
This test tries to load every PDB file in the PDB database and classifies the failures that occur.
The command line below shows what was done; broadly all versions of this test examine load-time problems and more expensive versions
(
"Hunting down these bugs is the most fun thing you can do on a Thursday morning" - Andy Watkins, probably.
An individual PDB passes or fails this test based on whether it errors out or completes the diagnostic. The test as a whole passes or fails based on a "reference results" system, like an expected result in a unit test. About 700 PDBs and 1200 CIFs fail at the time of this writing; the purpose of the test is to document the failures and watch for new ones, so PDBs failing in an expected manner does not constitute an overall test failure. The test will fail if PDBs pass or fail UNEXPECTEDLY, where the expectation is defined by the reference results (see below).
If you find that this page is telling you the test failed because there are FEWER errors: GREAT! You fixed some bugs! You can update the reference results following the instructions at the bottom of the page.
If you find that there are MORE failures than expected, especially non-timeout failures, consider it a warning that recent code changes may have introduced bugs into the PDB reading machinery. If you don't know what's going on: post to Slack or devel. DO NOT just update the reference results in this case.
If you want to know more about what this test does - pester Steven Lewis to write proper documentation.
Command line used:
14,425 total PDBs failed with the following error codes:
Test marked as FAILED due to following errors:
NOTE: 33409 PDB's passed the tests but was not listed in reference results.
To update reference results please copy the files below into the main repository:
reference-results.full.new.json → 「Rosetta repository」 as tests/benchmark/tests/scientific/protein_data_bank_diagnostic/reference-results.full.json
blocklist.full.new.json → 「Rosetta repository」 as tests/benchmark/tests/scientific/protein_data_bank_diagnostic/blocklist.json (note the cif/pdb/fast mode is ignored: the blocklist is segfaults and huge PDBs and is shared)