SelectVariants error: Multiple Criteria
AnsweredREQUIRED for all errors and issues:
a) GATK version used: v4.2.5.0
b) Exact command used:
gatk --java-options '-DGATK_STACKTRACE_ON_USER_EXCEPTION=true' SelectVariants \
-R $genomeFa \
-V merged.vcf.gz \
--selectExpressions 'AS_QD > 2.5 && AS_QD < 35 && AS_ReadPosRankSum > -1 && AS_ReadPosRankSum < 3.5' \
-O merged_filtered.vcf.gz
c) Entire program log:
Using GATK jar /app/software/GATK/4.2.5.0-GCCcore-11.2.0-Java-11/gatk-package-4.2.5.0-local.jar
Running:
java -Dsamjdk.use_async_io_read_samtools=false -Dsamjdk.use_async_io_write_samtools=true -Dsamjdk.use_async_io_write_tribble=false -Dsamjdk.compression_level=2 -DGATK_STACKTRACE_ON_USER_EXCEPTION=true -jar /app/software/GATK/4.2.5.0-GCCcore-11.2.0-Java-11/gatk-package-4.2.5.0-local.jar SelectVariants -R /shared/biodata/reference/iGenomes/Caenorhabditis_elegans/Ensembl/WBcel235/Sequence/WholeGenomeFasta/genome.fa -V merged.vcf.gz --selectExpressions AS_QD > 2.5 && AS_QD < 35 && AS_ReadPosRankSum > -1 && AS_ReadPosRankSum < 3.5 -O merged_filtered.vcf.gz
10:01:21.836 INFO NativeLibraryLoader - Loading libgkl_compression.so from jar:file:/app/software/GATK/4.2.5.0-GCCcore-11.2.0-Java-11/gatk-package-4.2.5.0-local.jar!/com/intel/gkl/native/libgkl_compression.so
Apr 19, 2022 10:01:21 AM shaded.cloud_nio.com.google.auth.oauth2.ComputeEngineCredentials runningOnComputeEngine
INFO: Failed to detect whether we are running on Google Compute Engine.
10:01:21.954 INFO SelectVariants - ------------------------------------------------------------
10:01:21.954 INFO SelectVariants - The Genome Analysis Toolkit (GATK) v4.2.5.0
10:01:21.955 INFO SelectVariants - For support and documentation go to https://software.broadinstitute.org/gatk/
10:01:21.955 INFO SelectVariants - Executing as hsriniva@gizmok27 on Linux v4.15.0-88-generic amd64
10:01:21.955 INFO SelectVariants - Java runtime: OpenJDK 64-Bit Server VM v11.0.2+9
10:01:21.955 INFO SelectVariants - Start Date/Time: April 19, 2022 at 10:01:21 AM PDT
10:01:21.955 INFO SelectVariants - ------------------------------------------------------------
10:01:21.955 INFO SelectVariants - ------------------------------------------------------------
10:01:21.956 INFO SelectVariants - HTSJDK Version: 2.24.1
10:01:21.956 INFO SelectVariants - Picard Version: 2.25.4
10:01:21.956 INFO SelectVariants - Built for Spark Version: 2.4.5
10:01:21.956 INFO SelectVariants - HTSJDK Defaults.COMPRESSION_LEVEL : 2
10:01:21.956 INFO SelectVariants - HTSJDK Defaults.USE_ASYNC_IO_READ_FOR_SAMTOOLS : false
10:01:21.956 INFO SelectVariants - HTSJDK Defaults.USE_ASYNC_IO_WRITE_FOR_SAMTOOLS : true
10:01:21.956 INFO SelectVariants - HTSJDK Defaults.USE_ASYNC_IO_WRITE_FOR_TRIBBLE : false
10:01:21.956 INFO SelectVariants - Deflater: IntelDeflater
10:01:21.956 INFO SelectVariants - Inflater: IntelInflater
10:01:21.956 INFO SelectVariants - GCS max retries/reopens: 20
10:01:21.956 INFO SelectVariants - Requester pays: disabled
10:01:21.956 INFO SelectVariants - Initializing engine
10:01:22.108 INFO FeatureManager - Using codec VCFCodec to read file file:///fh/fast/_SR/Genomics/user/hsriniva/projects/skunjo/cohort/merged.vcf.gz
10:01:22.152 INFO SelectVariants - Done initializing engine
10:01:22.234 INFO ProgressMeter - Starting traversal
10:01:22.234 INFO ProgressMeter - Current Locus Elapsed Minutes Variants Processed Variants/Minute
10:01:22.254 INFO SelectVariants - Shutting down engine
[April 19, 2022 at 10:01:22 AM PDT] org.broadinstitute.hellbender.tools.walkers.variantutils.SelectVariants done. Elapsed time: 0.01 minutes.
Runtime.totalMemory()=2147483648
***********************************************************************
A USER ERROR has occurred: For input string: "4.25"
See https://gatk.broadinstitute.org/hc/en-us/articles/360035891011-JEXL-filtering-expressions for documentation on using JEXL in GATK
***********************************************************************
org.broadinstitute.hellbender.exceptions.UserException: For input string: "4.25"
See https://gatk.broadinstitute.org/hc/en-us/articles/360035891011-JEXL-filtering-expressions for documentation on using JEXL in GATK
at org.broadinstitute.hellbender.tools.walkers.variantutils.SelectVariants.apply(SelectVariants.java:634)
at org.broadinstitute.hellbender.engine.VariantWalker.lambda$traverse$0(VariantWalker.java:104)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
at org.broadinstitute.hellbender.engine.VariantWalker.traverse(VariantWalker.java:102)
at org.broadinstitute.hellbender.engine.GATKTool.doWork(GATKTool.java:1085)
at org.broadinstitute.hellbender.cmdline.CommandLineProgram.runTool(CommandLineProgram.java:140)
at org.broadinstitute.hellbender.cmdline.CommandLineProgram.instanceMainPostParseArgs(CommandLineProgram.java:192)
at org.broadinstitute.hellbender.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:211)
at org.broadinstitute.hellbender.Main.runCommandLineProgram(Main.java:160)
at org.broadinstitute.hellbender.Main.mainEntry(Main.java:203)
at org.broadinstitute.hellbender.Main.main(Main.java:289)
Caused by: java.lang.NumberFormatException: For input string: "4.25"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.base/java.lang.Long.parseLong(Long.java:692)
at java.base/java.lang.Long.parseLong(Long.java:817)
at org.apache.commons.jexl2.JexlArithmetic.toLong(JexlArithmetic.java:906)
at org.apache.commons.jexl2.JexlArithmetic.compare(JexlArithmetic.java:718)
at org.apache.commons.jexl2.JexlArithmetic.lessThan(JexlArithmetic.java:774)
at org.apache.commons.jexl2.Interpreter.visit(Interpreter.java:967)
at org.apache.commons.jexl2.parser.ASTLTNode.jjtAccept(ASTLTNode.java:18)
at org.apache.commons.jexl2.Interpreter.visit(Interpreter.java:458)
at org.apache.commons.jexl2.parser.ASTAndNode.jjtAccept(ASTAndNode.java:18)
at org.apache.commons.jexl2.Interpreter.visit(Interpreter.java:449)
at org.apache.commons.jexl2.parser.ASTAndNode.jjtAccept(ASTAndNode.java:18)
at org.apache.commons.jexl2.Interpreter.visit(Interpreter.java:449)
at org.apache.commons.jexl2.parser.ASTAndNode.jjtAccept(ASTAndNode.java:18)
at org.apache.commons.jexl2.Interpreter.interpret(Interpreter.java:232)
at org.apache.commons.jexl2.ExpressionImpl.evaluate(ExpressionImpl.java:65)
at htsjdk.variant.variantcontext.JEXLMap.evaluateExpression(JEXLMap.java:186)
at htsjdk.variant.variantcontext.JEXLMap.get(JEXLMap.java:95)
at htsjdk.variant.variantcontext.JEXLMap.get(JEXLMap.java:15)
at htsjdk.variant.variantcontext.VariantContextUtils.match(VariantContextUtils.java:298)
at org.broadinstitute.hellbender.tools.walkers.variantutils.SelectVariants.apply(SelectVariants.java:626)
... 21 more
########################
It shows error "A USER ERROR has occurred: For input string: "4.25"" corresponds to AS_QD=4.25 (my first criteria on my first line). This tells me the filtering criteria isn't working. What am I doing wrong?
-
Hi Harini Prasanna,
Can you check that your VCF is not malformed? You can use the gatk tool ValidateVariants.
Best,
Genevieve
-
Hi Genevieve,
I managed to resolve the issue. Looks like it was a data type problem (35 vs 35.0). Thanks for the response though.
-Harini
-
Good to hear! Thanks for the update!
Please sign in to leave a comment.
3 comments