When loading workflow in server: No such node ID error

Hello,

Our production server has worked for several years.
but In 4/28, at first time the following error occurred during loading of a workflow:

28-Apr-2022 12:35:39.821  [http-nio-8080-exec-10] com.knime.enterprise.server.rest.impl.providers.exception.ExecutorExceptionMapper.toResponse No such node ID: 9
 com.knime.enterprise.utility.ExecutorException: No such node ID: 9
	at com.knime.enterprise.executor.rmi.RMIUtil.checkAndLog(RMIUtil.java:128)
	at com.knime.enterprise.executor.rmi.RMIUtil.runWithContextFinder(RMIUtil.java:94)
	at com.knime.enterprise.executor.rmi.RMIWorkflowExecutor.loadWorkflow(RMIWorkflowExecutor.java:458)
	at sun.reflect.GeneratedMethodAccessor62.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357)
	at sun.rmi.transport.Transport$1.run(Transport.java:200)
	at sun.rmi.transport.Transport$1.run(Transport.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
	at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:283)
	at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:260)
	at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:161)
	at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:227)
	at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:179)
	at com.sun.proxy.$Proxy155.loadWorkflow(Unknown Source)
	at com.knime.enterprise.server.executor.rmi.RMIExecutorImpl.loadWorkflow(RMIExecutorImpl.java:795)
	at com.knime.enterprise.server.jobs.WorkflowJobManagerImpl.loadWorkflow(WorkflowJobManagerImpl.java:699)
	at com.knime.enterprise.server.application.jobs.PermissionAwareWorkflowJobManagerImpl.loadWorkflow(PermissionAwareWorkflowJobManagerImpl.java:101)
	at com.knime.enterprise.server.rest.impl.v4.repository.JobsImpl.createNewJobAsMason(JobsImpl.java:120)
	at sun.reflect.GeneratedMethodAccessor217.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.openejb.server.cxf.rs.PojoInvoker.performInvocation(PojoInvoker.java:43)
	at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
	at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:191)
	at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:101)
	at org.apache.openejb.server.cxf.rs.AutoJAXRSInvoker.invoke(AutoJAXRSInvoker.java:68)
	at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
	at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
	at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:267)
	at org.apache.openejb.server.cxf.rs.CxfRsHttpListener.doInvoke(CxfRsHttpListener.java:253)
	at org.apache.tomee.webservices.CXFJAXRSFilter.doFilter(CXFJAXRSFilter.java:94)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.openejb.server.httpd.EEFilter.doFilter(EEFilter.java:65)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.server.rest.NoContentTypeFilter.doFilter(NoContentTypeFilter.java:121)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.server.rest.StaticContentFilter.doFilter(StaticContentFilter.java:110)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.server.rest.CSRFFilter.doFilter(CSRFFilter.java:103)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.server.rest.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:111)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.server.rest.ProxyRewriteFilter.doFilter(ProxyRewriteFilter.java:166)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.knime.enterprise.war.GeneralSecurityHeadersFilter.doFilter(GeneralSecurityHeadersFilter.java:79)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:610)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.tomee.catalina.OpenEJBSecurityListener$RequestCapturer.invoke(OpenEJBSecurityListener.java:97)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:800)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1471)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)

28-Apr-2022 12:35:42.493 情報 [http-nio-8080-exec-8] com.knime.enterprise.server.jobs.WorkflowJobManagerImpl.execute Executing job '/WF_012_LoadData_ByKey (WF_012_LoadData_ByKey 2022-04-28 12.35.38; 45e90d4a-9c48-440c-97b4-fffa37c19d14)' (UUID 45e90d4a-9c48-440c-97b4-fffa37c19d14)
28-Apr-2022 12:35:43.508 INFO [KNIME Job Event Distributor [1]] com.knime.enterprise.server.executor.rmi.RMIJobStatusUpdaterImpl.updateInternalState Executor timeout while updating job status for '/WF_012_LoadData_ByKey (WF_012_LoadData_ByKey 2022-04-28 12.35.38; 45e90d4a-9c48-440c-97b4-fffa37c19d14)' - skipping status update
28-Apr-2022 12:35:44.368 INFO [http-nio-8080-exec-5] com.knime.enterprise.server.jobs.WorkflowJobManagerImpl.execute Executing job '/WF_012_LoadData_ByKey (WF_012_LoadData_ByKey 2022-04-28 12.35.39; 31321fa1-a5a8-4831-bde6-b830b13e715c)' (UUID 31321fa1-a5a8-4831-bde6-b830b13e715c)
2022-04-28 12:35:39,836 : ERROR : KNIME-Worker-21553 : %J : Node :  Execute failed: No such node ID: 9
2022-04-28 12:36:02,493 : ERROR : KNIME-Worker-21566 : %J : Node :  Execute failed: Not all chunks finished - check individual chunk branches for details.

In the workflow,we are using “Parallel Chunk Loop” to call workflows by using “Call workflow (table based)” .
Table Creator(6 Rows) → Parallel Chunk Start-> Call workflow (table based) → Parallel Chunk End
※ node ID 9 is "Call workflow (table based) " node.
※ After 4/28, the workflow works well.
※ KNIME Using 8G Memory

KNIME Sever : 4.82
KNIME ANALYTICS PLATFORM: 3.72
Java version is 1.8.0_152 , and OS is Windows Server 2016

Thanks in advance
Ryu

Hi Ryu,

It is not mentioned in the provided logs, why the execution of the workflow failed once during the execution. As it worked again afterwards the workflow itself seems to be valid.

As your KNIME Server and Analytics Platform are pretty old versions they are already out of our support.
Therefore I would recommend to update this installation to a recent version, e.g. 4.14.2.

Best,
Michael

1 Like