GMOD / jbrowse-components

Source code for JBrowse 2, a modern React-based genome browser
https://jbrowse.org/jb2
Apache License 2.0
211 stars 63 forks source link

Test 'renamed refs -> test that bam with contigA instead of ctgA displays' failing on node 14 #1008

Closed peterkxie closed 4 years ago

peterkxie commented 4 years ago

Above test fails on local machine 100% of the time with following message:

Does pass on travis-ci and mostly passes on @cmdcolin local machine, may have something to do with OS or node version? My local machine specs are OSX v10.15.4, node v14.0.0. Did a fresh clone of repository and issue was not solved

cmdcolin commented 4 years ago

reproducible for me on node 14 (v14.4.0)

cmdcolin commented 4 years ago

confirmed here https://travis-ci.com/github/GMOD/jbrowse-components/jobs/349355924

cmdcolin commented 4 years ago

found that this appears to affect node 11,12,13,14

making the timeout very large on this test can help

timing the particular call of this.bam.getHeader() in BamAdapter shows that it can sometimes take 15 seconds to complete

this might have something to do with newer zlib updates in node (they said the zlib codebase was switched to chromium's as well as some other stuff)

the getHeader uses a slice of the whole BAM file which might be a clue, and calls node.js gunzip on this slice of this data, which is bgzf data

https://travis-ci.com/github/GMOD/jbrowse-components/jobs/350085137#L253

we could remove nodeUnzip from bgzf-filehandle, this does address the issue, or we could make a long timeout, that works too, or investigate further

see here for the long time spent in getHeader... https://travis-ci.com/github/GMOD/jbrowse-components/jobs/350085137#L253