CatchAll and I never got along on Ubuntu-based Linux because of Mono conflicts, but yesterday I tried to run it on Windows 8 Pro (64bit) with mothur v1.31.1 (64bit). CatchAll is failing on a couple of specific sets of samples in my shared file (not subsampled). Just to be on the safe side I’ve got both the mothur and catchall .exe files set to run in Win7 compatibility mode since nothing has been tested on 8 yet (made no difference when I ran without compatibility mode).
Group 1 - Anything with very few sequences. Not unreasonable, and I wouldn’t be analyzing those anyway. So I removed every sample with a total number of sequences below my analysis threshold (1000 sequences).
Group 2 - Anything with only one OTU. This I can accept as well since I can understand conceptually how it would be difficult to estimate species numbers when you only observe one species.
Group 3 - Samples with >1000 sequences and 2-4 OTUs. 2 OTUs always fail, 3 OTUs worked (1 occurrence), 4 OTUs failed on 3 occurrences and worked on 2. Everything that contained >4 OTUs worked processed just fine. These are the ones that I do not understand.
The error that I got when a sample failed was a pop up that said “MapleToCSharp has stopped working.” On the command line I got was
Unhandled Exception: System.IndexOutOfRangeException: Index was outside the boun ds of the array. at MapleToCSharp.BestModels(Int32 bestCount, String outputFileName, String[ ] modelDescription, Double cvRare, Double cvrareTauMax) at MapleToCSharp.Main(String args) [ERROR]: the catchall program did not run properly. Please check to make sure it is located in the same folder as your mothur executable.
Any thoughts? I suppose what’s bothering me more than anything else is that I can’t precisely predict what will make these samples fail. If it was as simple as the algorithm requires some baseline number of OTUs, I’d just accept it and move on.