bypassing a jdk1.8 bug: "comparison method violates its general contract!" - timsort
under certain conditions, snt usage can trigger a bug in the jdk1.8 currently bundled within fiji.

it is a bug in java.util.timsort, in this case triggered by a com.jogamp.opengl class call. in the context of snt usage, the bug can be just ‘annoying’ (e.g. linux with jdk1.8.0\_172) or catastrophic:…
@himmer, thanks for looking into it. that is a way newer jdk, so you may be right.

the problem comes from sorting “drawables” which are jzy3d primitives. it is this [call](https://github.com/jzy3d/jzy3d-api/blob/2bc67d0f803d8bf11b1e93a72a34653aa0766bad/jzy3d-core/src/main/java/org/jzy3d/plot3d/rendering/ordering/abstractorderingstrategy.java#l29-l39) that causes the issue. but the developers are aware of it, and even mention it in the code. i will followup with them, thanks!
interesting. fwiw, a concurrentmodificationexception is not a “null” exception. a concurrent hashmap is basically a non thread safe struct in java which doesn’t use synchronized methods so it’s faster but if two threads try to modify it at the same time, it will throw an error. i’m not clear why … its to do with the jit optimisation, the same is true if you insert conditional debug statement in the code, matlab needs to prepare to stop execution. > You might have missed a bracket somewhere... Only such a mistake causes so many insignificant errors.
> 
> 


And to find it, [format your code](http://www.gidnetwork.com/b-38.html) properly. It's your first debugging tool. We identified a scenario where locking could occur, and released a fix in version 13.0.1. If anyone is experiencing this issue, please upgrade to 13.0.1. not sure i understood. are you having problems with this code?

if yes, i think you’re using the wrong comparison operator (not = but ==). java.sql.timestamp is a subclass of java.util.date - it should work the same for comparison purposes:

<https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/timestamp.html>

if you specifically need a date, you could convert it back pretty easily; check if isinstance(java.sql.timestamp… for posterity, the issue was a different environment was being used in the ijulia notebook, which contained pavito, causing jump to downgrade.

for others finding this, here is the documentation on pkg environments:

[image]

[4. working with environments · pkg.jl](https://julialang.github.io/pkg.jl/v1/environments/) ok, in that case we believe it should be fixed in the upcoming 13.1 update, let us know if this is not the case once it’s out. > 
> 
> | Averdahl wrote:The question is Why and will it be fixed? |
> 
> 

Most likely because despite [all their bluster about loving freedom of choice](http://blogs.adobe.com/conversations/2010/05/freedom_of_choice.html), that freedom of choice does not extend to letting people choose their own browser by sticking to published, open standards.

It will not be fixed. The excuse Jive (the vendor of these forums) uses is that Opera's "[JavaScript engine refuses to load our RTE for one reason or another](http://www.jivesoftware.com/jivespace/message/277836#277836)". After Opera itself stepped in and contacted Jive that [the RTE did actually work](http://www.jivesoftware.com/jivespace/message/266797#266797), Jive changed its tune and 2 months ago stopped blaming Opera and simply wrote that "[At this time we are not planning on supporting Opera](http://www.jivesoftware.com/jivespace/message/360229#360229)". You can post a hijackthis log and i can take a look at it for you. Malware might be the cause.