Hi, I want to check similarity of the draft genome (250 contigs in total) to the reference genome using BRIG. I made a run but it did not work. On terminal I had some complains in regard to java such as:
java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.util.TimSort.mergeHi(TimSort.java:868)
at java.util.TimSort.mergeAt(TimSort.java:485)
at java.util.TimSort.mergeCollapse(TimSort.java:408)
at java.util.TimSort.sort(TimSort.java:214)
at java.util.TimSort.sort(TimSort.java:173)
at java.util.Arrays.sort(Arrays.java:659)
at brig.Main.reverseBlast(Main.java:206)
at brig.Main.BlastMaster(Main.java:1494)
at brig.Main.ParseBlast(Main.java:1352)
at brig.Three2.compute(Three2.java:337)
at brig.Three2.access$300(Three2.java:33)
at brig.Three2$4.run(Three2.java:234)
I made a test where I selected one and two contigs and ran that against reference. That worked quite ok. However, when I selected more than 10 contigs I see the same message as in case of 250 contigs. I will appreciate any suggestions.
3 answers
This is a programming error. http://stackoverflow.com/questions/11441666
There is nothing you can do unless modifying the java code.
You can use MUMmer tool (http://mummer.sourceforge.net/) for Genome Alignment.
if your data is rna the use bowtie2 or even try shrimp to do it
Log in to answer this question.
Run it on batches of 10 contigs... 1-10, 11-20, 21-30... see where the error is. Clearly it's one of the contigs, or maybe amount of contigs.