We've moved!
For WDL questions, see the WDL specification and WDL docs.
For Cromwell questions, see the Cromwell docs and please post any issues on Github.

Possible bug in size() function

ruslanafrazerruslanafrazer Member, Broadie

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.