View Issue Details

IDProjectCategoryView StatusLast Update
0003476SymmetricDSImprovementpublic2023-06-05 19:00
Reportergwilmer Assigned ToJishLong  
Prioritynormal 
Status closedResolutionfixed 
Target Version3.14.8Fixed in Version3.14.8 
Summary0003476: When a node is unregistered cancel all jobs / threads that are actively doing work for that node
DescriptionWhen a node is unregistered cancel all jobs / threads that are actively doing work for that node. The users scenario was a large initial load going to a node, that was subsequently unregistered. The initial load was large (> 35 M rows) and the extract job kept extracting after the node was unregistered and the load cancelled.
Steps To Reproduce1. Register a node
2. Kick off large initial load
3. Unregister the node
4. Watch extract job continue.
Tagsinitial/partial load

Activities

hanes

2019-04-24 19:39

developer   ~0001441

Confirmed. The Load Data detail screen for the load taking place also errors out when you go back to it:

[corp-000] - AppUI - Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc
com.vaadin.server.ServerRpcManager$RpcInvocationException: Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:159)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:116)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:445)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:410)
    at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:274)
    at com.vaadin.server.communication.PushHandler.lambda$new$1(PushHandler.java:148)
    at com.vaadin.server.communication.PushHandler.callWithUi(PushHandler.java:248)
    at com.vaadin.server.communication.PushHandler.onMessage(PushHandler.java:534)
    at com.vaadin.server.communication.PushAtmosphereHandler.onMessage(PushAtmosphereHandler.java:87)
    at com.vaadin.server.communication.PushAtmosphereHandler.onRequest(PushAtmosphereHandler.java:77)
    at org.atmosphere.cpr.AsynchronousProcessor.action(AsynchronousProcessor.java:225)
    at org.atmosphere.cpr.AsynchronousProcessor.suspended(AsynchronousProcessor.java:114)
    at org.atmosphere.container.Servlet30CometSupport.service(Servlet30CometSupport.java:67)
    at org.atmosphere.cpr.AtmosphereFramework.doCometSupport(AtmosphereFramework.java:2297)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.dispatch(DefaultWebSocketProcessor.java:594)
    at org.atmosphere.websocket.DefaultWebSocketProcessor$3.run(DefaultWebSocketProcessor.java:345)
    at org.atmosphere.util.VoidExecutorService.execute(VoidExecutorService.java:101)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.dispatch(DefaultWebSocketProcessor.java:340)
    at org.atmosphere.websocket.DefaultWebSocketProcessor.invokeWebSocketProtocol(DefaultWebSocketProcessor.java:448)
    at org.atmosphere.container.JSR356Endpoint$3.onMessage(JSR356Endpoint.java:272)
    at org.atmosphere.container.JSR356Endpoint$3.onMessage(JSR356Endpoint.java:269)
    at org.eclipse.jetty.websocket.jsr356.messages.TextWholeMessage.messageComplete(TextWholeMessage.java:56)
    at org.eclipse.jetty.websocket.jsr356.endpoints.JsrEndpointEventDriver.onTextFrame(JsrEndpointEventDriver.java:218)
    at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:162)
    at org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:375)
    at org.eclipse.jetty.websocket.common.extensions.AbstractExtension.nextIncomingFrame(AbstractExtension.java:182)
    at org.eclipse.jetty.websocket.common.extensions.compress.PerMessageDeflateExtension.nextIncomingFrame(PerMessageDeflateExtension.java:105)
    at org.eclipse.jetty.websocket.common.extensions.compress.CompressExtension.forwardIncoming(CompressExtension.java:142)
    at org.eclipse.jetty.websocket.common.extensions.compress.PerMessageDeflateExtension.incomingFrame(PerMessageDeflateExtension.java:85)
    at org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:220)
    at org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220)
    at org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:256)
    at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:679)
    at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:511)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:104)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:247)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:140)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
    at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:243)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:679)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:597)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155)
    ... 43 more
Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method buttonClick in com.jumpmind.symmetric.console.impl.aZ failed.
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:519)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:273)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:237)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1014)
    at com.vaadin.ui.Button.fireClick(Button.java:384)
    at com.vaadin.ui.Button$1.click(Button.java:57)
    ... 47 more
Caused by: java.lang.NullPointerException
    at com.jumpmind.symmetric.console.impl.cv.i(LoadDetail.java:575)
    at com.jumpmind.symmetric.console.impl.cv.q(LoadDetail.java:1300)
    at com.jumpmind.symmetric.console.impl.cv.onBackgroundUIRefresh(LoadDetail.java:1337)
    at com.jumpmind.symmetric.console.impl.cD.onBackgroundUIRefresh(OutgoingLoadPanel.java:334)
    at com.jumpmind.symmetric.console.impl.cD.onRefresh(OutgoingLoadPanel.java:367)
    at com.jumpmind.symmetric.console.impl.t.addToView(AbstractMenuScreen.java:246)
    at com.jumpmind.symmetric.console.impl.t$3.run(AbstractMenuScreen.java:162)
    at com.jumpmind.symmetric.console.impl.t.buttonClick(AbstractMenuScreen.java:174)
    at sun.reflect.GeneratedMethodAccessor100.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:499)
    ... 52 more

Related Changesets

SymmetricDS: 3.14 fdc6c881

2023-06-05 17:59:02

JishLong

Details Diff
0003476: When a node is unregistered cancel all jobs / threads that are
actively doing work for that node
Affected Issues
0003476
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/NodeService.java Diff File

Issue History

Date Modified Username Field Change
2018-03-06 19:00 gwilmer New Issue
2019-04-24 17:36 elong Tag Attached: initial/partial load
2019-04-24 19:39 hanes Note Added: 0001441
2019-04-24 19:39 hanes Status new => confirmed
2023-06-05 18:00 JishLong Changeset attached => SymmetricDS 3.14 fdc6c881
2023-06-05 19:00 JishLong Assigned To => JishLong
2023-06-05 19:00 JishLong Status confirmed => resolved
2023-06-05 19:00 JishLong Resolution open => fixed
2023-06-05 19:00 JishLong Fixed in Version => 3.14.8
2023-07-19 12:58 admin Status resolved => closed