IncompatibleClassChangeError when running gatk BaseRecalibrator
0
2
Entering edit mode
6.2 years ago

Dear all,

I am using GATK's BaseRecalibrator to recalibrate the base quality of an alignment.

The BAM file's duplicates were removed with SAMBAMBA:

sambamba markdup -r --overflow-list-size 1000000 --hash-table-size 1000000 <input>.bam <output>.bam

I am using the VCF file clinvar.vcf.gz and the reference human Homo_sapiens.GRCh38.dna.toplevel.fa.gz, which I have called grch38.fa for short; both files call the chromosome with numbers only.

I created the index fasta and dictionary of the reference sequence:

samtools faidx grch38.fa
java -jar ~/src/picard/picard.jar CreateSequenceDictionary R=grch38.fa O=grch38.dict

I then ran GATK with this:

gatk BaseRecalibrator -I <file>.bam -R ~/grch38.fa --known-sites ~/grch38.vcf.gz -O <file>.tab

but I got:

[...]
14:02:01.642 INFO  BaseRecalibrator - Initializing engine
14:02:01.935 INFO  FeatureManager - Using codec VCFCodec to read file file:///home/gigiux/refSeq/human/grch38/old/grch38.vcf.gz
14:02:01.969 WARN  IndexUtils - Feature file "/home/gigiux/refSeq/human/grch38/old/grch38.vcf.gz" appears to contain no sequence dictionary. Attempting to retrieve a sequence dictionary from the associated index file
14:02:02.035 INFO  BaseRecalibrator - Done initializing engine
14:02:02.068 INFO  BaseRecalibrationEngine - The covariates being used here: 
14:02:02.069 INFO  BaseRecalibrationEngine -    ReadGroupCovariate
14:02:02.069 INFO  BaseRecalibrationEngine -    QualityScoreCovariate
14:02:02.069 INFO  BaseRecalibrationEngine -    ContextCovariate
14:02:02.069 INFO  BaseRecalibrationEngine -    CycleCovariate
14:02:02.084 INFO  ProgressMeter - Starting traversal
14:02:02.084 INFO  ProgressMeter -        Current Locus  Elapsed Minutes       Reads Processed     Reads/Minute
14:02:02.087 INFO  BaseRecalibrator - Shutting down engine
[27 September 2018 at 14:02:02 CEST] org.broadinstitute.hellbender.tools.walkers.bqsr.BaseRecalibrator done. Elapsed time: 0.01 minutes.
Runtime.totalMemory()=1056964608
Exception in thread "main" java.lang.IncompatibleClassChangeError: Inconsistent constant pool data in classfile for class org/broadinstitute/hellbender/transformers/ReadTransformer. Method lambda$identity$d67512bf$1(Lorg/broadinstitute/hellbender/utils/read/GATKRead;)Lorg/broadinstitute/hellbender/utils/read/GATKRead; at index 65 is CONSTANT_MethodRef and should be CONSTANT_InterfaceMethodRef

I think the main message is: Exception in thread "main" java.lang.IncompatibleClassChangeError at index 65 is CONSTANT_MethodRef and should be CONSTANT_InterfaceMethodRef.

How can I sort this out? How could that variable be changed? (I haven't touch anything within GATK...)

Thank you

GATK BaseRecalibrator java • 5.8k views
ADD COMMENT
0
Entering edit mode

Hello marongiu.luigi ,

if your overall basequality is fine, stop wasting your time by doing BQSR. The impact of this will be negligible.

fin swimmer

ADD REPLY
0
Entering edit mode

and how would I know that? Isn't the BQSR supposed to be superior to the first alignment? And even if in this particular case the quality is fine, what about possible future files? This step should have been fast and the downstream comparison of before/after should have shown little gain in doing BQSR. Like this I am simply stuck...

ADD REPLY
0
Entering edit mode

it's a bug with the way gatk was compiled. You should report this to the Broad.

ADD REPLY
0
Entering edit mode

There was a similar issue related to HaplotypeCaller in GATK and that was apparently solved by a change in java version. You might want to have a look at that.

ADD REPLY
2
Entering edit mode

Thanks, I've seen now that post and looks it was indeed the Java version. I changed the default Java with:

$ sudo update-alternatives --config java
[sudo] password for <user>:


There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-10-oracle/bin/java             1091      auto mode
  1            /usr/lib/jvm/java-10-oracle/bin/java             1091      manual mode
* 2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

I selected option 2 and then run GATK; the output was:

[...]
Press <enter> to keep the current choice[*], or type selection number: 
11:37:38.556 INFO  ProgressMeter - Traversal complete. Processed 57868745 total reads in 18.4 minutes.
11:37:38.722 INFO  BaseRecalibrator - Calculating quantized quality scores...
11:37:38.737 INFO  BaseRecalibrator - Writing recalibration report...
11:37:39.516 INFO  BaseRecalibrator - ...done!
11:37:39.516 INFO  BaseRecalibrator - Shutting down engine
[01 October 2018 11:37:39 CEST] org.broadinstitute.hellbender.tools.walkers.bqsr.BaseRecalibrator done. Elapsed time: 18.89 minutes.
Runtime.totalMemory()=507510784
Tool returned:
57868745

Looks like it is solved.

ADD REPLY

Login before adding your answer.

Traffic: 1519 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6