[ https://issues.apache.org/jira/browse/CASSANDRA-17908?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17607363#comment-17607363 ]
David Capwell commented on CASSANDRA-17908: ------------------------------------------- does not apply to 4.1 just trunk, but its a critical bug for trunk > IllegalArgumentException in Gossiper#order due to concurrent mutations to > elements being applied > ------------------------------------------------------------------------------------------------ > > Key: CASSANDRA-17908 > URL: https://issues.apache.org/jira/browse/CASSANDRA-17908 > Project: Cassandra > Issue Type: Bug > Components: Cluster/Gossip > Reporter: David Capwell > Assignee: David Capwell > Priority: Normal > Fix For: 4.1.x > > > org.apache.cassandra.gms.Gossiper#order was added due to sub-systems > depending on a happens-before relationship of events even though Gossip does > not provide such ordering… to help out we “order” the events discovered by > gossip so we apply them in a predictable order… This has been found to have > issues where we add the elements into the global state and under some > conditions they get mutated causing ordering to fail > {code} > ERROR 2022-09-01T19:04:24,789 [GossipStage:1] > org.apache.cassandra.service.CassandraDaemon:234 - Exception in thread > Thread[GossipStage:1,5,main] > java.lang.IllegalArgumentException: Comparison method violates its general > contract! > at java.util.TimSort.mergeLo(TimSort.java:777) ~[?:1.8.0_345] > at java.util.TimSort.mergeAt(TimSort.java:514) ~[?:1.8.0_345] > at java.util.TimSort.mergeForceCollapse(TimSort.java:457) ~[?:1.8.0_345] > at java.util.TimSort.sort(TimSort.java:254) ~[?:1.8.0_345] > at java.util.Arrays.sort(Arrays.java:1512) ~[?:1.8.0_345] > at java.util.ArrayList.sort(ArrayList.java:1464) ~[?:1.8.0_345] > at java.util.Collections.sort(Collections.java:177) ~[?:1.8.0_345] > at org.apache.cassandra.gms.Gossiper.order(Gossiper.java:1327) > ~[cie-cassandra-3.0.24.41.jar:3.0.24.41] > at org.apache.cassandra.gms.Gossiper.applyStateLocally(Gossiper.java:1334) > ~[cie-cassandra-3.0.24.41.jar:3.0.24.41] > at > org.apache.cassandra.gms.GossipDigestAck2VerbHandler.doVerb(GossipDigestAck2VerbHandler.java:49) > ~[cie-cassandra-3.0.24.41.jar:3.0.24.41] > at > org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:70) > ~[cie-cassandra-3.0.24.41.jar:3.0.24.41] > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[?:1.8.0_345] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_345] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > ~[?:1.8.0_345] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > ~[?:1.8.0_345] > at > org.apache.cassandra.concurrent.NamedThreadFactory.lambda$threadLocalDeallocator$0(NamedThreadFactory.java:116) > ~[cie-cassandra-3.0.24.41.jar:3.0.24.41] > at java.lang.Thread.run(Thread.java:750) [?:1.8.0_345] > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org