「view this page in B3 βῆτα server」

Revisions №59612

branch: master 「№59612」
Commited by: Vikram K. Mulligan
GitHub commit link: 「d79e45365216041f」 「№2416」
Difference from previous tested commit:  code diff
Commit date: 2017-08-04 16:53:41

Merge pull request #2416 from RosettaCommons/vmullig/threadsafe_scoringmanager Caught a problem in the FoldTree class that was impeding thread-safety The FoldTree class creates some global data (grr). When multiple threads were working with different instances of FoldTrees, these global data were getting messed up. Adding `thread_local` resolves this -- though I think it might be better not to make these data global at all. As far as I can tell, there's no reason to be using the `static` keyword here, except to avoid a tiny bit of deallocating and allocating (which this probably doesn't avoid all that well, when working with multiple FoldTrees simultaneously). It would be better to make this a private member variable of the FoldTree class (one per instance). DONE: - [x] Fix general integration test failures. - [x] Check unit tests in cxx11thread/serialization build. - [x] Check integration tests in cxx11thread/serialization build. - [x] Check scoring tests in cxx11thread/serialization build. - FACTS test fails, as expected. (The FACTS global data cache pose-specific information, and are not threadsafe). All other tests pass. - [x] Beauty.