Parallel Chunk Loop: Rejected Execution Error

Hi,

resetting a parallel chunk loop, after updating a shared component which is the only difference to the other times I reset the node, threw this error (converted via OCR):

RejectedExecutionException: Task org.knime.gateway.impl.service.util.CallThrottleSSLambdaS566 8/0x000000080311e5b8@71f4592e rejected from java.util.concurrent.ThreadPoolExecutor©30f8b4f1 [Terminated , pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 2]

Checking the logs I found this:

2024-07-28 22:40:56,098 : ERROR : main :  : WrappedNodeDialog : Parallel Chunk Start : 3:1126:0:856 : failed to apply settings: Task org.knime.gateway.impl.service.util.CallThrottle$$Lambda$5668/0x000000080311e5b8@71f4592e rejected from java.util.concurrent.ThreadPoolExecutor@30f8b4f1[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 2]
java.util.concurrent.RejectedExecutionException: Task org.knime.gateway.impl.service.util.CallThrottle$$Lambda$5668/0x000000080311e5b8@71f4592e rejected from java.util.concurrent.ThreadPoolExecutor@30f8b4f1[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 2]
	at java.base/java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.reject(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.execute(Unknown Source)
	at java.base/java.util.concurrent.Executors$DelegatedExecutorService.execute(Unknown Source)
	at org.knime.gateway.impl.service.util.CallThrottle.invoke(CallThrottle.java:95)
	at org.knime.gateway.impl.service.util.WorkflowChangesListener.callback(WorkflowChangesListener.java:405)
	at org.knime.gateway.impl.service.util.WorkflowChangesListener.lambda$9(WorkflowChangesListener.java:163)
	at org.knime.core.node.workflow.NodeContainer.notifyMessageListeners(NodeContainer.java:899)
	at org.knime.core.node.workflow.NodeContainer.setNodeMessage(NodeContainer.java:887)
	at org.knime.core.node.workflow.SubNodeContainer.onWFMStructureChange(SubNodeContainer.java:602)
	at org.knime.core.node.workflow.SubNodeContainer.lambda$10(SubNodeContainer.java:584)
	at org.knime.core.node.workflow.WorkflowManager.lambda$80(WorkflowManager.java:8205)
	at java.base/java.util.ArrayList.forEach(Unknown Source)
	at org.knime.core.node.workflow.WorkflowManager.notifyWorkflowListeners(WorkflowManager.java:8205)
	at org.knime.core.node.workflow.WorkflowManager.loadNodeSettings(WorkflowManager.java:2236)
	at org.knime.core.node.workflow.NodeContainer.applySettingsFromDialog(NodeContainer.java:1141)
	at org.knime.core.ui.wrapper.NodeContainerWrapper.applySettingsFromDialog(NodeContainerWrapper.java:264)
	at org.knime.workbench.ui.wrapper.WrappedNodeDialog.callApplySettingsFromDialog(WrappedNodeDialog.java:671)
	at org.knime.workbench.ui.wrapper.WrappedNodeDialog.doApply(WrappedNodeDialog.java:624)
	at org.knime.workbench.ui.wrapper.WrappedNodeDialog.doOK(WrappedNodeDialog.java:558)
	at org.knime.workbench.ui.wrapper.WrappedNodeDialog$5.widgetSelected(WrappedNodeDialog.java:494)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4274)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4072)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
	at org.eclipse.jface.window.Window.open(Window.java:799)
	at org.knime.workbench.ui.wrapper.WrappedNodeDialog.open(WrappedNodeDialog.java:198)
	at org.knime.workbench.editor2.editparts.NodeContainerEditPart.openDialog(NodeContainerEditPart.java:961)
	at org.knime.workbench.editor2.editparts.NodeContainerEditPart.openNodeDialog(NodeContainerEditPart.java:868)
	at org.knime.workbench.editor2.editparts.NodeContainerEditPart.openNodeDialog(NodeContainerEditPart.java:850)
	at org.knime.workbench.editor2.editparts.NodeContainerEditPart.openDialog(NodeContainerEditPart.java:839)
	at org.knime.workbench.editor2.editparts.NodeContainerEditPart.performRequest(NodeContainerEditPart.java:403)
	at org.eclipse.gef.tools.SelectEditPartTracker.performOpen(SelectEditPartTracker.java:207)
	at org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClick(SelectEditPartTracker.java:149)
	at org.knime.workbench.editor2.WorkflowSelectionDragEditPartsTracker.handleDoubleClick(WorkflowSelectionDragEditPartsTracker.java:126)
	at org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(AbstractTool.java:1050)
	at org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(SelectionTool.java:542)
	at org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java:223)
	at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseDoubleClicked(DomainEventDispatcher.java:329)
	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubleClick(LightweightSystem.java:562)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:200)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4274)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4072)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1151)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1042)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:152)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:639)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:546)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173)
	at org.knime.product.rcp.KNIMEApplication.start(KNIMEApplication.java:211)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:143)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:109)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:439)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:271)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1459)

If I can reproduce it, I will try to share a test workflow.

Best
Mike

It happened again. Not for the Parallel Chunk Loop but when trying to apply changes to an Ungroup node:

ERROR Ungroup 3:1240 failed to apply settings: Task org.knime.gateway.impl.service.util.CallThrottle$$Lambda$4949/0x0000000802f16b48@7434541 rejected from java.util.concurrent.ThreadPoolExecutor@5298d790[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 2]

It was triggered only once after switching from MUI to CUI (because of the interactive view issue) and I am able to reproduce it as follows.

  1. Make a change in the CUI
  2. Switch to MUI and immediately back to CUI
  3. Make changes to another or the same upstream node

Note: It is note necessary to execute anything nor save. I restarted Knime as well and was able to reproduce the aforementioned issue.

240731 topic 81538 - threaddump-1722436487954.tdump.txt (83.7 KB)

After starting Knime I noticed a few errors in the log you find below as a zip disguised as a txt.

240731 topic 81538 knime.zip.txt (254.3 KB)

Best
Mike

Hi Mike,

thanks for the detailed information! I added it to our internal ticket (NXT-2764).

Best,
Manuel

2 Likes

Internal ticket ID: NXT-2764
Fix version(s): 5.3.2, 5.4.0
Other related topic(s): -

1 Like