Project Red - Fabrication

Project Red - Fabrication

19M Downloads

java.lang.IllegalArgumentException: Comparison method violates its general contract!

dbazim opened this issue ยท 4 comments

commented

It was rare crash before
https://gist.github.com/dbazim/9de1d088b7c8a21f0bf0#file-gistfile1-txt
but now it crashes in a few seconds after load the saved game.
https://gist.github.com/dbazim/9de1d088b7c8a21f0bf0#file-gistfile2-txt

Please suggest workaround.

commented

I hacked the src/mrtjp/projectred/transportation/requests.scala a bit.
Line 385
before
val load = new PathOrdering(0.0D)
after
val load = new PathOrdering(0.1D) //VYZI

It looks like my saved game stopped crashing upon load )
That is not fix I guess. It looks like PathOrdering compare somehow violates transitivity contract. Will try to get the details after fixing the NEI dependencies on dev environment. I am new in scala and gradle.

commented

Ive been planning on rewriting how requests and most other things in the network are set up anyway...

commented

Jam occurs rather often now. Looks like red button to reset crafting engine just like save game and load it again is required. Some jam indicator is required in case it can't be avoided at all. White bulbs in pipe is not informative in case crafting is stuck. Support for IC2 machines like ore washing plant may be at use.
I assume existing pipe configurations will survive with new version of code
I will be able to test. I am interested in some scala code writing. Let me know if I can help.

commented

Quite certain this wont occur anymore. Reopen if you find such an issue again.