Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MergeVCFs step does not generate index in some cases #1

Open
pbilling opened this issue Jun 9, 2022 · 1 comment
Open

MergeVCFs step does not generate index in some cases #1

pbilling opened this issue Jun 9, 2022 · 1 comment
Assignees
Labels
bug Something isn't working

Comments

@pbilling
Copy link
Contributor

pbilling commented Jun 9, 2022

Issue seems to due to VM running out of disk space. From a MergeVCF log:

[Thu Jun 25 08:23:53 UTC 2020] picard.vcf.MergeVcfs done. Elapsed time: 89.52 minutes.
Runtime.totalMemory()=2027290624
To get help, see http://broadinstitute.github.io/picard/index.html#GettingHelp
Exception in thread "main" htsjdk.samtools.util.RuntimeIOException: Write error; BinaryCodec in writemode; file: /cromwell_root/SHIP5536850.g.vcf.gz
	at htsjdk.samtools.util.BinaryCodec.writeBytes(BinaryCodec.java:222)
	at htsjdk.samtools.util.BlockCompressedOutputStream.writeGzipBlock(BlockCompressedOutputStream.java:389)
	at htsjdk.samtools.util.BlockCompressedOutputStream.deflateBlock(BlockCompressedOutputStream.java:352)
	at htsjdk.samtools.util.BlockCompressedOutputStream.write(BlockCompressedOutputStream.java:251)tee: /cromwell_root/stderr: No space left on device

	at htsjdk.samtools.util.BlockCompressedOutputStream.write(BlockCompressedOutputStream.java:228)
	at htsjdk.variant.variantcontext.writer.VCFWriter.writeAndResetBuffer(VCFWriter.java:128)
	at htsjdk.variant.variantcontext.writer.VCFWriter.add(VCFWriter.java:227)
	at picard.vcf.MergeVcfs.doWork(MergeVcfs.java:154)
	at picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:268)
	at picard.cmdline.PicardCommandLine.instanceMain(PicardCommandLine.java:98)
	at picard.cmdline.PicardCommandLine.main(PicardCommandLine.java:108)
Caused by: java.io.IOException: No space left on device

Comparison of GVCF sizes indicates that failed steps are handling larger GVCFs than successful ones.
image

@pbilling pbilling added the bug Something isn't working label Jun 9, 2022
@pbilling pbilling self-assigned this Jun 9, 2022
@pbilling
Copy link
Contributor Author

pbilling commented Jun 9, 2022

Looks like MergeVCFs task is currently using 30 GB disk, recommend increasing disk size.

# Combine multiple VCFs or GVCFs from scattered HaplotypeCaller runs
task MergeVCFs {
  Array[File] input_vcfs
  Array[File] input_vcfs_indexes
  String output_vcf_name
  Int preemptible_tries

  # Using MergeVcfs instead of GatherVcfs so we can create indices
  # See https://github.com/broadinstitute/picard/issues/789 for relevant GatherVcfs ticket
  command {
    java -Xms2000m -jar /usr/gitc/picard.jar \
      MergeVcfs \
      INPUT=${sep=' INPUT=' input_vcfs} \
      OUTPUT=${output_vcf_name}
  }
  runtime {
    docker: "us.gcr.io/broad-gotc-prod/genomes-in-the-cloud:2.3.2-1510681135"
    preemptible: preemptible_tries
    memory: "3 GB"
    disks: "local-disk 30 HDD"
  }
  output {
    File output_vcf = "${output_vcf_name}"
    File output_vcf_index = "${output_vcf_name}.tbi"
  }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant