Malt-run fails with NullPointerException

Hello everyhone from the Huson Lab,
this is Sina. It’s been a while. :wink:
I have been washed ashore on the Uni Cambridge HPC cluster and trying to run a simple 16S analysis with MALT.
My version is this:

Version MALT (version 0.5.3, built 4 Aug 2021)

I have successfully built the database, but when I run

malt-run -m BlastN -at SemiGlobal -t 20 -rqc true -supp 0.001 -e 0.001 -mpi 75.0 -top 10.0 -i example.fastq -d …/…/…/databases/16_malt -o test.rma -v

I get this exception which clearly does not tell me much:

Caught:

java.lang.NullPointerException

at jloda/jloda.util.Basic.checkFileWritable(Basic.java:2564)

at malt/malt.MaltRun.getOutputFileName(MaltRun.java:561)

at malt/malt.MaltRun.run(MaltRun.java:278)

at malt/malt.MaltRun.main(MaltRun.java:75)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.base/java.lang.reflect.Method.invoke(Method.java:564)

at com.install4j.runtime/com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:84)

at com.install4j.runtime/com.install4j.runtime.launcher.UnixLauncher.start(UnixLauncher.java:66)

at install4j.malt.MaltRun.main(Unknown Source)

Have you maybe an idea what could be going wrong? The infrastructure is a HPC, I will try to get it to work on my laptop instead, but it would be good if I could set this up on the HPC for others to use.

EDIT: I did try it on my laptop, but had the same result. Could the database be the problem?

Best wishes to all of you,
Sina

Think these are the three critical error comments?
java.lang.NullPointerException

at jloda/jloda.util.Basic.checkFileWritable(Basic.java:2564)

at malt/malt.MaltRun.getOutputFileName(MaltRun.java:561)

Something about your outputfilename is not what it expects? Maybe just point it to a folder and let Malt make up it’s own output file name?

And older versions of Malt could not make folder for you… so you would have to make the folder first and then it would run fine… this has been solved recently, but i’m not sure at what version anymore… So it could also be that if you just do

touch test.rma

and create an empty shell file, that Malt can now load stuff into it… but again not sure if this was solved in your version already or not

I have now found a workaround by using an output directory instead of an output file.
For output RMA files, it fails to do anything on my laptop, it creates empty files on the HPC.
If the file already exists (I only tried this on my laptop), it is actually deleted.

Writing into an existing output directory does work.
So this is only a problem if you want to write directly to a RMA file.

Thank you, this brought me on the right way for finding a workaround!

Hi all,
I too having the exactly same error messages when running a code similarly shared by @SinaBeier above on malt V0.5.3. I have followed whats recommended by creating a new folder and --output to this new folder. Despite that, same error message has pooped up no matter what i did.
Any advice to resolve this is much appreciated.