PopulatePHGDBPipelinePlugin fails on example database
1
0
Entering edit mode
5 months ago
ryan • 0

I'm following the steps in the "ExampleDatabase" example of the PHG wiki. Running PHG version 1.8 on singularity (3.8.6 and apptainer version 1.1.8-1.el8).

After the CreateSmallGenomesPlugin step, I modify configSQLiteDocker.txt to include "localGVCFFolder=/phg/remoteGvcfs/" and create the corresponding remoteGvcfs directory in dockerBaseDir. Providing this directory, MakeInitialPHGDBPipelinePlugin runs without error and creates phgSmallSeq.db (172K in size).

When running PopulatePHGDBPipelinePlugin, the following error is preventing progress (more detailed log below):

[DefaultDispatcher-worker-1] ERROR net.maizegenetics.pangenome.processAssemblyGenomes.MummerScriptProcessing - Error creating delta file from  nucmer: Error: 1
[DefaultDispatcher-worker-2] ERROR net.maizegenetics.pangenome.processAssemblyGenomes.MummerScriptProcessing - Error creating delta file from  nucmer: Error: 1

Code usage:

WORKING_DIR=/path/to/basedir/dockerBaseDir
singularity exec -B ${WORKING_DIR}:/phg phg_1.8.simg \
  /tassel-5-standalone/run_pipeline.pl -debug -Xmx1G \
  -configParameters /phg/configSQLiteDocker.txt -PopulatePHGDBPipelinePlugin -endPlugin \
  > populatedb_log.txt

Is there an error in my usage or configuration? Any troubleshooting advice is appreciated!

Further log details of possible relevance:

[pool-1-thread-1] DEBUG net.maizegenetics.plugindef.AbstractPlugin - Error running alignWithNucmer with ref: /phg/basedir/dockerBaseDir/inputDir/reference//Ref.fa and assembly: /phg/basedir/dockerBaseDir/inputDir/assemblies//LineA.fa error: Error creating delta File from nucmer 
java.lang.IllegalStateException: Error running alignWithNucmer with ref: /phg/basedir/dockerBaseDir/inputDir/reference//Ref.fa and assembly: /phg/basedir/dockerBaseDir/inputDir/assemblies//LineA.fa error: Error creating delta File from nucmer 
    at net.maizegenetics.pangenome.processAssemblyGenomes.MummerScriptProcessing.alignWithNucmer(MummerScriptProcessing.java:99)
    at net.maizegenetics.pangenome.processAssemblyGenomes.AssemblyHaplotypesMultiThreadPlugin$processAssemblyChrom$2.invokeSuspend(AssemblyHaplotypesMultiThreadPlugin.kt:265)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    Suppressed: java.lang.IllegalStateException: Error running alignWithNucmer with ref: /phg/basedir/dockerBaseDir/inputDir/reference//Ref.fa and assembly: /phg/basedir/dockerBaseDir/inputDir/assemblies//LineB.fa error: Error creating delta File from nucmer
phg • 464 views
ADD COMMENT
2
Entering edit mode
5 months ago
lcj34 ▴ 420

For PHG 1.x we recommend using anchorwave as your aligner. What is best is to run your assembly alignments using anchorwave outside of the pipeline via a script that calls the plugin AssemblyMAFFromAnchorwavePlugin(). Gvcf files would then need to be created via the MAFToGvcfPlugin, which then can be loaded as haplotypes to the PHG database.

This is explained more fully in the documentation here: https://bitbucket.org/bucklerlab/practicalhaplotypegraph/wiki/UserInstructions/CreatePHG_step2AssemblyAndWGSHaplotypes.md

(see the information under "A. Align assemblies to reference genome, add to DB.")

If you want to continue using mummer-4 for alignment, you can do so outside of the pipeline. The documentation above discusses this.

Having said all of this, it is certainly a bug on our part that mummer4 is still an option in the PHG 1.x PopulatePHGDBPipelinePlugin. I will fix that - thanks for letting us know!

ADD COMMENT
0
Entering edit mode

Thank you so much for the fast response and documentation! I will attempt to run my alignments with anchorwave, then use MAFToGVCFPlugin to convert to gvcf format, and place the resulting bgzipped .gvcf and .tbi files into the inputDir/loadDB/gvcf directory.

ADD REPLY

Login before adding your answer.

Traffic: 2337 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6