diff --git a/ChangeLog b/ChangeLog index e53acc570fef033730928dad5dc941d6ff1ebb78..1fdb233596c73a75ca6c0569ff09ffc6b545c8c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,11 @@ -Version 17 +Version 17.0.2-test - TBD next release + + 1) Added bamview_use_htsjdk_file_index_caching property to allow switching off of htsjdk caching for bam files. + This gets around a bug for large bams whereby parts of the bam fail to get loaded - RT ticket #624271. + See htsjdk GitHub issue 1127 for details. + + +Version 17.0.1 Artemis/ACT and associated applications have been upgraded to Java 8. Java 7/6/5 are now no longer supported - RT ticket #589103 diff --git a/etc/log4j.properties b/etc/log4j.properties index d3f56d1fb7964ea2c0e8ab0891ddb013dfe6a674..346d5096cf08cb7c5459965eb998e2ec3f9ad6aa 100644 --- a/etc/log4j.properties +++ b/etc/log4j.properties @@ -36,6 +36,7 @@ log4j.logger.uk.ac.sanger.artemis.components.genebuilder.cv.GoBox=DEBUG, R log4j.logger.uk.ac.sanger.artemis.chado.ArtemisUtils=DEBUG, R log4j.logger.uk.ac.sanger.artemis.components.database.DatabaseJPanel=DEBUG, R log4j.logger.uk.ac.sanger.artemis.components.alignment.LookSeqPanel=DEBUG, R +log4j.logger.uk.ac.sanger.artemis.components.alignment.BamView=INFO, R log4j.logger.uk.ac.sanger.artemis.components.variant=DEBUG, R log4j.logger.uk.ac.sanger.artemis.io.ReadAndWriteEntry=DEBUG, R log4j.logger.uk.ac.sanger.artemis.io.GFFStreamFeature=DEBUG, R diff --git a/etc/options b/etc/options index f7879a0ede03d2492e81bc79f3b3268dc1ccc7e6..8e398bb1a77be73cfa52d348a18314bc661baf68 100644 --- a/etc/options +++ b/etc/options @@ -19,7 +19,6 @@ font_size = 12 - # Set the name of the font to use in Artemis. These possibilites are # available on all platforms: # Dialog, DialogInput, Monospaced, Serif, SansSerif, Symbol. @@ -47,7 +46,6 @@ genetic_code_default = 1 eukaryotic_start_codons = atg prokaryotic_start_codons = atg gtg ttg - # # Genetic Codes : # http://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi?mode=c @@ -859,6 +857,8 @@ bam_read_thread = 2 # Max read coverage to display bam_max_coverage = 1000000 bamview_ftp_buffer_size=10485760 +# The following setting is turned off due to htsjdk issue no. 1127 (see GitHub) +bamview_use_htsjdk_file_index_caching=false # # CHADO DATABASE OPTIONS diff --git a/etc/versions b/etc/versions index 5bd9885cef78034c851e43ab9b58d181920de3ef..bc3133b5cbbc1ca6f46124ec7facb6686e2f6e82 100644 --- a/etc/versions +++ b/etc/versions @@ -1,4 +1,4 @@ -Artemis Release 17.0.1 -ACT Release 17.0.1 -DNAPlotter Release 17.0.1 -BamView 17.0.1 +Artemis Release 17.0.2-test +ACT Release 17.0.2-test +DNAPlotter Release 17.0.2-test +BamView 17.0.2-test diff --git a/lib/picard/VERSION.txt b/lib/picard/VERSION.txt index 17e60c9edd3fbfa8de405c9aaa950b93b2b0d7c8..4e191748d114d4b1fb26eb2cd44bbcfc5c75be90 100644 --- a/lib/picard/VERSION.txt +++ b/lib/picard/VERSION.txt @@ -1,3 +1,4 @@ -Picard jar version - 2.17.2 +Picard jar version - 2.18.4 -This jar includes htsjdk and all dependency libraries. +This jar includes the latest htsjdk and all dependency libraries. +Downloaded from Github on 21/5/2018 diff --git a/lib/picard/picard.jar b/lib/picard/picard.jar index 0a44ddb522fb5ca2b9d93e2b130ff28cf657dead..0c179bc5d4c653916d151c6c74c597f41de318c7 100644 Binary files a/lib/picard/picard.jar and b/lib/picard/picard.jar differ diff --git a/test/build-test.xml b/test/build-test.xml index 53fd27d60670457ef7753b8cc8c4b5dcc71c8584..39b3cf392dc5f92569f68035ea49d0037c17f775 100644 --- a/test/build-test.xml +++ b/test/build-test.xml @@ -357,6 +357,8 @@ <exclude name="**/chado/*"/> <exclude name="**/*Database*"/> <exclude name="**/DNADraw_ESTest.*"/> + <exclude name="**/ExternalApplication_ESTest.*"/> + <exclude name="**/PublicDBDocumentEntry_ESTest.*"/> <!-- TODO The following excluded evosuite tests need fixing --> diff --git a/uk/ac/sanger/artemis/components/alignment/BamView.java b/uk/ac/sanger/artemis/components/alignment/BamView.java index edd48036e7a950caadc9a58be879a51cce8a66e9..c02a3d43c44463410994f32334d39b3d4a4ded09 100644 --- a/uk/ac/sanger/artemis/components/alignment/BamView.java +++ b/uk/ac/sanger/artemis/components/alignment/BamView.java @@ -276,6 +276,9 @@ public class BamView extends JPanel /** Whether we should strictly validate upfront the input BAM/CRAM file.*/ boolean doInputFileValidation = false; + /** Whether to use htsjdk file index caching.*/ + boolean useHtsjdkIndexCaching = false; + private volatile AtomicBoolean foundFatalErrors = new AtomicBoolean(false); /** busy cursor */ @@ -365,7 +368,10 @@ public class BamView extends JPanel { logger4j.debug("BAM MAX COVERAGE="+Options.getOptions().getIntegerProperty("bam_max_coverage")); MAX_COVERAGE = Options.getOptions().getIntegerProperty("bam_max_coverage"); - } + } + + useHtsjdkIndexCaching = Options.getOptions().getPropertyTruthValue("bamview_use_htsjdk_file_index_caching"); + logger4j.debug("USE HTSJDK BAM FILE INDEX CACHING=" + useHtsjdkIndexCaching); try { @@ -524,7 +530,11 @@ public class BamView extends JPanel // so need to set the default stringency (from properties). // final SamReaderFactory samReaderFactory = SamReaderFactory.makeDefault(); - samReaderFactory.enable(SamReaderFactory.Option.CACHE_FILE_BASED_INDEXES); + if (useHtsjdkIndexCaching) + samReaderFactory.enable(SamReaderFactory.Option.CACHE_FILE_BASED_INDEXES); + else + samReaderFactory.disable(SamReaderFactory.Option.CACHE_FILE_BASED_INDEXES); + samReaderFactory.disable(Option.EAGERLY_DECODE); samReaderFactory.validationStringency(validationStringency);