To celebrate the release of GATK 4.0, we are giving away free credits for running the GATK4 Best Practices pipelines in FireCloud, our secure online analysis portal. It’s first come first serve, so sign up now to claim your free credits worth $250. Sponsored by Google Cloud. Learn more at

Possible bug in size() function

ruslanafrazerruslanafrazer Member, Broadie
edited August 2017 in Ask the WDL team

I tried to use the size() function inside my tasks input section like this:

Int preemptible
File snpValidatedMafliteCaptureFile
String genomeBuild
File oncoDBTarBall
String pairName
String outputFilename = "${pairName}.snp.capture.maf.annotated"
File defaultConfig
String inputFormat
String outputFormat
String txMode
String additionalOptions
File? canonicalTXFile
String? logFilename
Int diskGB = ceil((size(snpValidatedMafliteCaptureFile)+size(oncoDBTarBall)+size(defaultConfig)+size(canonicalTXFile))/1000000000+3)

The path for canonicalTXFile (which is optional) evaluates just fine everywhere else, but once it's put in the size() function I get this error:
message: Couldn't resolve all inputs for CallingGroup_Workflow.Oncotate_74 at index None.
message: Input evaluation for Call CallingGroup_Workflow.Oncotate_74 failed.
message: diskGB
message: Could not find diskGB in input section of call CallingGroup_Workflow.Oncotate_74
message: The specified GCS path '"gs://fc-48b23f20-a0a4-4576-914d-9e347b53f58a/workspace_files/tx_exact_uniprot_matches.txt"' does not parse as a URI. Illegal character in scheme name at index 0: %22gs://fc-48b23f20-a0a4-4576-914d-9e347b53f58a/workspace_files/tx_exact_uniprot_matches.txt%22

I checked and the file path does not contain any spaces. Also, once I removed "size(canonicalTXFile)" from my computation, everything ran just fine.

So, is it possible that size() has a problem with optional inputs? And if not, what did I do wrong?

Best Answer


Sign In or Register to comment.