View Issue Details

IDProjectCategoryView StatusLast Update
0007035SymmetricDS ProBugpublic2025-09-04 21:18
Reporteremiller Assigned Toemiller  
Prioritylow 
Status closedResolutionfixed 
Product Version3.15.9 
Target Version3.16.6Fixed in Version3.16.6 
Summary0007035: An IllegalArgumentException can occur when the user is sent to the Manage Outgoing Loads screen after creating a load
DescriptionAfter sending a load from the current node, the user is sent to the Manage Outgoing Loads screen. After they're sent to this screen, it's possible for the following IllegalArgumentException to occur, which causes the web console to freeze up:

2025-08-14 13:56:04,917 ERROR [gui] [DefaultErrorHandler] [qtp1746150957-6841344] StackTraceKey.init [IllegalArgumentException:3699926022] java.lang.IllegalArgumentException: Comparison method violates its general contract!
     at java.base/java.util.ComparableTimSort.mergeHi(ComparableTimSort.java:870)
     at java.base/java.util.ComparableTimSort.mergeAt(ComparableTimSort.java:487)
     at java.base/java.util.ComparableTimSort.mergeForceCollapse(ComparableTimSort.java:426)
     at java.base/java.util.ComparableTimSort.sort(ComparableTimSort.java:222)
     at java.base/java.util.Arrays.sort(Arrays.java:1108)
     at java.base/java.util.Arrays.sort(Arrays.java:1302)
     at java.base/java.util.ArrayList.sort(ArrayList.java:1804)
     at java.base/java.util.Collections.sort(Collections.java:145)
     at org.jumpmind.symmetric.statistic.StatisticManager.getProcessInfos(StatisticManager.java:128)
     at com.jumpmind.symmetric.console.impl.cm.a(AbstractLoadPanel.java:404)
     at com.jumpmind.symmetric.console.impl.cm.q(AbstractLoadPanel.java:211)
     at com.vaadin.flow.data.renderer.ComponentRenderer.createComponent(ComponentRenderer.java:220)
     at com.vaadin.flow.data.renderer.ComponentDataGenerator.createComponent(ComponentDataGenerator.java:104)
     at com.vaadin.flow.data.renderer.ComponentDataGenerator.generateData(ComponentDataGenerator.java:86)
     at com.vaadin.flow.data.provider.CompositeDataGenerator.lambda$generateData$0(CompositeDataGenerator.java:47)
     at java.base/java.lang.Iterable.forEach(Iterable.java:75)
     at com.vaadin.flow.data.provider.CompositeDataGenerator.generateData(CompositeDataGenerator.java:47)
     at com.vaadin.flow.data.provider.CompositeDataGenerator.lambda$generateData$0(CompositeDataGenerator.java:47)
     at java.base/java.lang.Iterable.forEach(Iterable.java:75)
     at com.vaadin.flow.data.provider.CompositeDataGenerator.generateData(CompositeDataGenerator.java:47)
     at com.vaadin.flow.data.provider.DataCommunicator.generateJson(DataCommunicator.java:1519)
     at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
     at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
     at java.base/java.util.stream.IntPipeline$1$1.accept(IntPipeline.java:180)
     at java.base/java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
     at java.base/java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:712)
     at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
     at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
     at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
     at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
     at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
     at com.vaadin.flow.data.provider.DataCommunicator.getJsonItems(DataCommunicator.java:1474)
     at com.vaadin.flow.data.provider.DataCommunicator.collectChangesToSend(DataCommunicator.java:1412)
     at com.vaadin.flow.data.provider.DataCommunicator.performUpdate(DataCommunicator.java:1279)
     at com.vaadin.flow.data.provider.DataCommunicator.flush(DataCommunicator.java:1233)
     at com.vaadin.flow.data.provider.DataCommunicator.lambda$requestFlush$7258256f$1(DataCommunicator.java:1138)
     at com.vaadin.flow.internal.StateTree.lambda$runExecutionsBeforeClientResponse$2(StateTree.java:397)
     at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
     at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
     at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
     at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
     at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
     at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
     at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
     at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
     at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
     at com.vaadin.flow.internal.StateTree.runExecutionsBeforeClientResponse(StateTree.java:392)
     at com.vaadin.flow.server.communication.UidlWriter.encodeChanges(UidlWriter.java:394)
     at com.vaadin.flow.server.communication.UidlWriter.createUidl(UidlWriter.java:170)
     at com.vaadin.flow.server.communication.UidlRequestHandler.createUidl(UidlRequestHandler.java:155)
     at com.vaadin.flow.server.communication.UidlRequestHandler.writeUidl(UidlRequestHandler.java:145)
     at com.vaadin.flow.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:115)
     at com.vaadin.flow.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40)
     at com.vaadin.flow.server.VaadinService.handleRequest(VaadinService.java:1574)
     at com.vaadin.flow.server.VaadinServlet.service(VaadinServlet.java:398)
     at com.jumpmind.symmetric.console.ui.AppServlet.service(AppServlet.java:28)
     at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
     at org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)
     at org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1622)
     at org.eclipse.jetty.ee10.websocket.servlet.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:195)
     at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
     at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1594)
     at org.jumpmind.symmetric.web.HttpMethodFilter.doFilter(HttpMethodFilter.java:60)
     at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
     at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1594)
     at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
     at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
     at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
     at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1594)
     at org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1555)
     at org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:819)
     at org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)
     at org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:470)
     at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:575)
     at org.eclipse.jetty.ee10.servlet.SessionHandler.handle(SessionHandler.java:717)
     at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1064)
     at org.eclipse.jetty.server.Handler$Wrapper.handle(Handler.java:740)
     at org.eclipse.jetty.server.handler.EventsHandler.handle(EventsHandler.java:81)
     at org.eclipse.jetty.server.Server.handle(Server.java:182)
     at org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:662)
     at org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416)
     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)
     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)
     at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:480)
     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:443)
     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)
     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)
     at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)
     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)
     at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)
     at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)
     at java.base/java.lang.Thread.run(Thread.java:1583)
Tagsinitial/partial load, ui

Activities

pbelov

2025-09-04 21:18

manager   ~0003370

Included in the 3.16.6 release

Issue History

Date Modified Username Field Change
2025-08-28 13:16 emiller New Issue
2025-08-28 13:16 emiller Status new => assigned
2025-08-28 13:16 emiller Assigned To => emiller
2025-08-28 13:16 emiller Tag Attached: initial/partial load
2025-08-28 13:16 emiller Tag Attached: ui
2025-08-28 13:21 emiller Priority normal => low
2025-08-29 14:49 pbelov Status assigned => resolved
2025-08-29 14:49 pbelov Resolution open => fixed
2025-08-29 14:49 pbelov Fixed in Version => 3.16.6
2025-09-04 21:18 pbelov Note Added: 0003370
2025-09-04 21:18 pbelov Status resolved => closed