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.

An error in preprocessing pipeline

suimyesuimye TokyoMember
edited February 2019 in Ask the Cromwell + WDL Team

Hi,
I am now trying to use preprocessing pipline for getting clean mapped BAM. I have excused best practice pipeline "processing-for-variant-discovery-gatk4.wdl" and got error message described below.

java -jar ~/bin/cromwell-36.1.jar run /home/masaki.morioka/project/test/processing-for-variant-discovery-gatk4.wdl -i /home/masaki.morioka/project/test/processing-for-variant-discovery-gatk4.hg38.wgs.inputs.json >test.log 2>&1

[2019-02-28 04:32:08,39] [error] WorkflowManagerActor Workflow c12efd4e-a08b-42e2-bf6a-06db0721f1bb failed (during ExecutingWorkflowState): Job PreProcessingForVariantDiscovery_GATK4.MergeBamAlignment:0:1 exited with return code 127 which has not been declared as a valid return code. See 'continueOnReturnCode' runtime attribute for more details.
Check the content of stderr for potential additional information: /home/masaki.morioka/project/test/cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c12efd4e-a08b-42e2-bf6a-06db0721f1bb/call-MergeBamAlignment/shard-0/execution/stderr.
 /cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c12efd4e-a08b-42e2-bf6a-06db0721f1bb/call-MergeBamAlignment/shard-0/execution/script: line 24: /masaki.morioka/tool/gatk-4.0.6.0/gatk: No such file or directory

It looks like a very simple matter. But I have never resolved this error. When I have excused GATK by copying this path, GATK has correctly worked as,

:~/project/test$ /home/masaki.morioka/tool/gatk-4.0.6.0/gatk

 Usage template for all tools (uses --spark-runner LOCAL when used with a Spark tool)
    gatk AnyTool toolArgs

 Usage template for Spark tools (will NOT work on non-Spark tools)
    gatk SparkTool toolArgs  [ -- --spark-runner <LOCAL | SPARK | GCS> sparkArgs ]

 Getting help
    gatk --list       Print the list of available tools

    gatk Tool --help  Print help on a particular tool

 Configuration File Specification
     --gatk-config-file                PATH/TO/GATK/PROPERTIES/FILE

 gatk forwards commands to GATK and adds some sugar for submitting spark jobs

   --spark-runner <target>    controls how spark tools are run
     valid targets are:
     LOCAL:      run using the in-memory spark runner
     SPARK:      run using spark-submit on an existing cluster 
                 --spark-master must be specified
                 --spark-submit-command may be specified to control the Spark submit command
                 arguments to spark-submit may optionally be specified after -- 
     GCS:        run using Google cloud dataproc
                 commands after the -- will be passed to dataproc
                 --cluster <your-cluster> must be specified after the --
                 spark properties and some common spark-submit parameters will be translated 
                 to dataproc equivalents

   --dry-run      may be specified to output the generated command line without running it
   --java-options 'OPTION1[ OPTION2=Y ... ]'   optional - pass the given string of options to the 
                 java JVM at runtime.  
                 Java options MUST be passed inside a single string with space-separated values.

In Json file, I have written the gatk path as,

String gatk_path = select_first([gatk_path_override, "/home/masaki.morioka/tool/gatk-4.0.6.0/gatk"])

Do you have any suggestion for this?

My environment is

cromwell v36
gatk v4.0.6.0

Answers

  • suimyesuimye TokyoMember

    gatk command-line was executed from

    /cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c12efd4e-a08b-42e2-bf6a-06db0721f1bb/call-MergeBamAlignment/shard-0/execution/script

    .
    In this script file, gatk command-line was written in line 24.

    /home/masaki.morioka/tool/gatk-4.0.6.0/gatk --java-options "-Dsamjdk.compression_level=5 -Xms3000m" \
      MergeBamAlignment \
      --VALIDATION_STRINGENCY SILENT \
      --EXPECTED_ORIENTATIONS FR \
      --ATTRIBUTES_TO_RETAIN X0 \
      --ALIGNED_BAM /cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c17797f1-0a7e-47d7-b95b-b16156c9c0fd/call-MergeBamAlignment/shard-0/inputs/456039380/6484.unmerged.bam \
      --UNMAPPED_BAM ./cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c17797f1-0a7e-47d7-b95b-b16156c9c0fd/call-MergeBamAlignment/shard-0/inputs/1382697050/6484.bam \
      --OUTPUT 6484.aligned.unsorted.bam \
      --REFERENCE_SEQUENCE /cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c17797f1-0a7e-47d7-b95b-b16156c9c0fd/call-MergeBamAlignment/shard-0/inputs/-960734774/Homo_sapiens_assembly38.fasta \
      --PAIRED_RUN true \
      --SORT_ORDER "unsorted" \
      --IS_BISULFITE_SEQUENCE false \
      --ALIGNED_READS_ONLY false \
      --CLIP_ADAPTERS false \
      --MAX_RECORDS_IN_RAM 2000000 \
      --ADD_MATE_CIGAR true \
      --MAX_INSERTIONS_OR_DELETIONS -1 \
      --PRIMARY_ALIGNMENT_STRATEGY MostDistant \
      --PROGRAM_RECORD_ID "bwamem" \
      --PROGRAM_GROUP_VERSION "0.7.15-r1140" \
      --PROGRAM_GROUP_COMMAND_LINE "bwa mem -K 100000000 -p -v 3 -t 16 -Y $bash_ref_fasta" \
      --PROGRAM_GROUP_NAME "bwamem" \
      --UNMAPPED_READ_STRATEGY COPY_TO_TAG \
      --ALIGNER_PROPER_PAIR_FLAGS true \
      --UNMAP_CONTAMINANT_READS true
    )  > "$outc17797f1" 2> "$errc17797f1"
    echo $? > /cromwell-executions/PreProcessingForVariantDiscovery_GATK4/c17797f1-0a7e-47d7-b95b-b16156c9c0fd/call-MergeBamAlignment/shard-0/execution/rc.tmp
    

    It seems that this command did not work as "No such file or directory".

Sign In or Register to comment.