Hi Nissim, Thanks for providing the stack trace. This stack trace seems to point to some other issue, as the failure itself relates to character set parsing. It sounds like one node is returning some type of error response from another node during the request replication process.
If you can look at the user and app logs across all cluster nodes, that should provide some additional background for the source of the error. Regards, David Handermann On Fri, Dec 20, 2024 at 9:12 AM Nissim Shiman <nshi...@yahoo.com.invalid> wrote: > > Hello Team, > > I am running into an issue when running on a three node cluster. If the ui > is brought up on one of the non-primary nodes, and refreshed, it give an > error: > > Invalid State > Current state = CODING_END, new state = CODING > > I am interested if others see anything similar. > > Code was compiled and run on RHEL8 with java-21-openjdk-21.0.5 > > The nifi-user log has this: > > 2024-12-20 14:56:55,456 WARN [NiFi Web Server-156] > o.a.n.w.a.c.IllegalStateExceptionMapper java.lang.IllegalStateException: > Current state = CODING_END, new state = CODING. Returning Conflict > response.java.lang.IllegalStateException: Current state = CODING_END, new > state = CODING at > java.base/java.nio.charset.CharsetEncoder.throwIllegalStateException(CharsetEncoder.java:1012) > at > java.base/java.nio.charset.CharsetEncoder.canEncode(CharsetEncoder.java:924) > at > java.base/java.nio.charset.CharsetEncoder.canEncode(CharsetEncoder.java:1005) > at > org.apache.nifi.security.proxied.entity.StandardProxiedEntityEncoder.getSanitizedIdentity(StandardProxiedEntityEncoder.java:76) > at > org.apache.nifi.security.proxied.entity.StandardProxiedEntityEncoder.getEncodedEntity(StandardProxiedEntityEncoder.java:64) > at > java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) > 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.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 > org.apache.nifi.web.security.ProxiedEntitiesUtils.buildProxiedEntitiesChainString(ProxiedEntitiesUtils.java:114) > at > org.apache.nifi.cluster.coordination.http.replication.ThreadPoolRequestReplicator.updateRequestHeaders(ThreadPoolRequestReplicator.java:249) > at > org.apache.nifi.cluster.coordination.http.replication.ThreadPoolRequestReplicator.forwardToCoordinator(ThreadPoolRequestReplicator.java:333) > at > org.apache.nifi.cluster.coordination.http.replication.ThreadPoolRequestReplicator.forwardToCoordinator(ThreadPoolRequestReplicator.java:324) > at > org.apache.nifi.web.api.ApplicationResource.replicateNodeResponse(ApplicationResource.java:1039) > at > org.apache.nifi.web.api.ApplicationResource.replicateNodeResponse(ApplicationResource.java:1008) > at > org.apache.nifi.web.api.ApplicationResource.replicate(ApplicationResource.java:999) > at > org.apache.nifi.web.api.ApplicationResource.replicate(ApplicationResource.java:983) > at > org.apache.nifi.web.api.ApplicationResource.replicate(ApplicationResource.java:958) > at > org.apache.nifi.web.api.FlowResource.getFlow(FlowResource.java:499) at > java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) > at java.base/java.lang.reflect.Method.invoke(Method.java:580) > at > org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:146) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:189) > at > org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:176) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:93) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:478) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:400) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81) > at > org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:274) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248) at > org.glassfish.jersey.internal.Errors$1.call(Errors.java:244) at > org.glassfish.jersey.internal.Errors.process(Errors.java:292) at > org.glassfish.jersey.internal.Errors.process(Errors.java:274) at > org.glassfish.jersey.internal.Errors.process(Errors.java:244) at > org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:266) > at > org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:253) > at > org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:696) > at > org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:397) > at > org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:349) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:312) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205) > at > org.eclipse.jetty.ee10.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1379) > at > org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736) > at > org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1619) > at > org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365) > at > org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:101) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) > at > org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.apache.nifi.web.security.log.AuthenticationUserFilter.doFilterInternal(AuthenticationUserFilter.java:57) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.oauth2.server.resource.web.authentication.BearerTokenAuthenticationFilter.doFilterInternal(BearerTokenAuthenticationFilter.java:145) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.authenticate(NiFiAuthenticationFilter.java:94) > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.doFilter(NiFiAuthenticationFilter.java:56) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.apache.nifi.web.security.csrf.CsrfCookieFilter.doFilterInternal(CsrfCookieFilter.java:43) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.apache.nifi.web.security.csrf.SkipReplicatedCsrfFilter.doFilterInternal(SkipReplicatedCsrfFilter.java:59) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374) > at > org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233) > at > org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) > at > org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205) > at > org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1591) > at > org.apache.nifi.web.filter.ExceptionFilter.doFilter(ExceptionFilter.java:44) > at > org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:208) > at > org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1591) > at > org.eclipse.jetty.ee10.servlets.DoSFilter.doFilterChain(DoSFilter.java:462) > at > org.apache.nifi.web.server.filter.DataTransferExcludedDoSFilter.doFilterChain(DataTransferExcludedDoSFilter.java:51) > at > org.eclipse.jetty.ee10.servlets.DoSFilter.doFilter(DoSFilter.java:317) > at org.eclipse.jetty.ee10.servlets.DoSFilter.doFilter(DoSFilter.java:282) > at > org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205) > at > org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1591) > at > org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) > at > org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) > 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:1591) > at > org.apache.nifi.web.server.log.RequestAuthenticationFilter.doFilterInternal(RequestAuthenticationFilter.java:59) > 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:1591) > at > org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1552) > 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:469) > 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:1060) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:181) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:181) > 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.util.thread.Invocable$ReadyTask.run(Invocable.java:175) > at > org.eclipse.jetty.http2.server.internal.HttpStreamOverHTTP2$1.run(HttpStreamOverHTTP2.java:135) > 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.produce(AdaptiveExecutionStrategy.java:195) > at > org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:209) > at > org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:156) > at > org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:442) > at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99) > at > org.eclipse.jetty.io.ssl.SslConnection$SslEndPoint.onFillable(SslConnection.java:575) > at > org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:390) > at > org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:150) > 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) > > > On Thursday, December 19, 2024 at 09:02:34 PM UTC, David Handermann > <exceptionfact...@apache.org> wrote: > > Team, > > I am pleased to be calling this vote for the source release of Apache > NiFi 2.1.0. > > Please review the following guide for how to verify a release candidate build: > > https://cwiki.apache.org/confluence/display/NIFI/Release+Candidate+Verification > > The source being voted on the and the convenience binaries are > available on the Apache Distribution Repository: > > https://dist.apache.org/repos/dist/dev/nifi/nifi-2.1.0 > > The build artifacts are available on the Apache Nexus Repository: > > https://repository.apache.org/content/repositories/orgapachenifi-1303/ > > Git Tag: nifi-2.1.0-RC2 > Git Commit ID: 2f91793272f48efb80d18a01d7086f406b6d9968 > GitHub Commit Link: > https://github.com/apache/nifi/commit/2f91793272f48efb80d18a01d7086f406b6d9968 > > Checksums of nifi-2.1.0-source-release.zip > > SHA512: > 374227bbdf9df45ce30266d1e5d86fbd022f88876ac765a29b65dde3f9da7f675cf4e4e313e9b6f77067b73ea7a7cc82ce4599cac04b7a38175c81e46ef1ed2d > > Release artifacts are signed with the following key: > > https://people.apache.org/keys/committer/exceptionfactory.asc > > KEYS file is available on the Apache Distribution Repository: > > https://dist.apache.org/repos/dist/release/nifi/KEYS > > Issues resolved for this version: 88 > > https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12316020&version=12355215 > > Release note highlights can be found on the project wiki: > > https://cwiki.apache.org/confluence/display/NIFI/Release+Notes#ReleaseNotes-Version2.1.0 > > The vote will be open for 72 hours. > > Please download the release candidate and evaluate the necessary items > including checking hashes, signatures, build from source, and test. > Then please vote: > > [] +1 Release this package as nifi-2.1.0 > [] +0 no opinion > [] -1 Do not release this package because... >