How to debug faulty BBmap clumpify command?
1
0
Entering edit mode
15 hours ago

I tried to deduplicate some fastq files using BBmap's clumpify.sh, but I got the error:

$ clumpify.sh in=Trimmed/V25_1_Trm.fq.gz in2=Trimmed/V25_2_Trm.fq.gz out=Trimmed/V25_1_TrmDed.fq.gz out2=Trimmed/V25_2_TrmDed.fq.gz passes=6 dedupe
java -ea -Xmx23265m -Xms23265m -cp /home/gigiux/src/BBmap/current/ clump.Clumpify in=Trimmed/V25_1_Trm.fq.gz in2=Trimmed/V25_2_Trm.fq.gz out=Trimmed/V25_1_TrmDed.fq.gz out2=Trimmed/V25_2_TrmDed.fq.gz passes=6 dedupe
Executing clump.Clumpify [in=Trimmed/V25_1_Trm.fq.gz, in2=Trimmed/V25_2_Trm.fq.gz, out=Trimmed/V25_1_TrmDed.fq.gz, out2=Trimmed/V25_2_TrmDed.fq.gz, passes=6, dedupe]
Version 39.05

Read Estimate:          26932149
Memory Estimate:        20547 MB
Memory Available:       19050 MB
Set groups to 13
Executing clump.KmerSplit [in1=Trimmed/V25_1_Trm.fq.gz, in2=Trimmed/V25_2_Trm.fq.gz, out=Trimmed/V25_1_TrmDed_clumpify_p1_temp%_28deca9aa1a82dc1.fq.gz, out2=, groups=13, ecco=false, addname=f, shortname=f, unpair=false, repair=f, namesort=f, ow=true, passes=6, dedupe]

Reset INTERLEAVED to false because paired input files were specified.
Set INTERLEAVED to false
Input is being processed as paired
Writing interleaved.
Exception in thread "main" java.lang.NoClassDefFoundError: sketch/SketchTool
    at clump.KmerComparator.<init>(KmerComparator.java:36)
    at clump.KmerComparator.<init>(KmerComparator.java:23)
    at clump.KmerSplit.processInner(KmerSplit.java:331)
    at clump.KmerSplit.process(KmerSplit.java:314)
    at clump.KmerSplit.main(KmerSplit.java:52)
    at clump.Clumpify.runOnePass_v2(Clumpify.java:403)
    at clump.Clumpify.process(Clumpify.java:277)
    at clump.Clumpify.main(Clumpify.java:47)
Caused by: java.lang.ClassNotFoundException: sketch.SketchTool
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
    ... 8 more

The trimmed files were generated with bbduk.sh:

bbduk.sh in=Raw/V25_1.fq.gz in2=Raw/V25_2.fq.gz out=Trimmed/V25_1_Trm.fq.gz out2=Trimmed/V25_2_Trm.fq.gz ktrim=r k=23 mink=11 hdist=1 tbo tpe minlen=70 ref=adapters ftm=5 -Xmx200m

But I got no error there... What might be the cause and how can I fix it?

Thank you

bbmap fastq trimming genome • 1.0k views
ADD COMMENT
1
Entering edit mode
14 hours ago

It is trying to access the BBTools sketch tool that is a dependency and doesn't find it.

I have almost no experience with Java, but my guess would be that there is an issue with the tool missing in the classpath -cp /home/gigiux/src/BBmap/current/ or being otherwise corrupted. Maybe you also have a conflicting environment variable like $CLASSPATH configured that points to another directory.

ADD COMMENT
0
Entering edit mode

It makes sense since the command worked flawlessly on another machine... Thanks

ADD REPLY
0
Entering edit mode

worked flawlessly on another machine

If you rearranged/moved the contents of BBMap software bundle from default, it can lead to the "class" errors.

I prefer being explicit with input/output directives with BBMap e.g. in1=, out1=, out2=.

In your log output above you have:

Input is being processed as paired
Writing interleaved.

This may be referring to intermediate output inside bbmap but see if changing to explicit out's as above make this go away. out= with two inputs will lead to interleaved output.

Current release of BBMap is v.39.34. You appear to be using an older release.

ADD REPLY

Login before adding your answer.

Traffic: 4281 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