Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-8742

Unable to view FlowFile Content in cluster mode

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Critical
    • Resolution: Unresolved
    • 1.14.0
    • None
    • Core Framework
    • None

    Description

      When I create some content and List Queue I can see the FlowFile in the queue. I can then download it. However, when I attempt to view it, I get a TimeoutException:

      2021-06-25 18:08:55,958 WARN [Replicate Request Thread-1] o.a.n.c.c.h.r.ThreadPoolRequestReplicator Failed to replicate request GET /nifi-api/flowfile-queues/452afb8c-017a-1000-0000-000046f5f263/flowfiles/907f11da-666f-428f-9582-b9afb0ac107a/content to localhost:8481 due to java.net.SocketTimeoutException: timeout
      2021-06-25 18:08:55,962 WARN [Replicate Request Thread-1] o.a.n.c.c.h.r.ThreadPoolRequestReplicator
      java.net.SocketTimeoutException: timeout
      	at okio.SocketAsyncTimeout.newTimeoutException(JvmOkio.kt:143)
      	at okio.AsyncTimeout.access$newTimeoutException(AsyncTimeout.kt:162)
      	at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:335)
      	at okio.RealBufferedSource.indexOf(RealBufferedSource.kt:427)
      	at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:320)
      	at okhttp3.internal.http1.HeadersReader.readLine(HeadersReader.kt:29)
      	at okhttp3.internal.http1.Http1ExchangeCodec.readResponseHeaders(Http1ExchangeCodec.kt:178)
      	at okhttp3.internal.connection.Exchange.readResponseHeaders(Exchange.kt:106)
      	at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:79)
      	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
      	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34)
      	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
      	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
      	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
      	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
      	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
      	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
      	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
      	at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
      	at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154)
      	at org.apache.nifi.cluster.coordination.http.replication.okhttp.OkHttpReplicationClient.replicate(OkHttpReplicationClient.java:136)
      	at org.apache.nifi.cluster.coordination.http.replication.okhttp.OkHttpReplicationClient.replicate(OkHttpReplicationClient.java:130)
      	at org.apache.nifi.cluster.coordination.http.replication.ThreadPoolRequestReplicator.replicateRequest(ThreadPoolRequestReplicator.java:640)
      	at org.apache.nifi.cluster.coordination.http.replication.ThreadPoolRequestReplicator$NodeHttpRequest.run(ThreadPoolRequestReplicator.java:832)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	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)
      Caused by: java.net.SocketTimeoutException: Read timed out
      	at java.net.SocketInputStream.socketRead0(Native Method)
      	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
      	at java.net.SocketInputStream.read(SocketInputStream.java:171)
      	at java.net.SocketInputStream.read(SocketInputStream.java:141)
      	at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
      	at sun.security.ssl.InputRecord.read(InputRecord.java:503)
      	at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:990)
      	at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:948)
      	at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
      	at okio.InputStreamSource.read(JvmOkio.kt:90)
      	at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:129)
      	... 26 common frames omitted
      

      Works okay in standalone mode but not cluster mode. I have a 2-node cluster running on localhost, with almost no load. So there should be no timeout..

      Attachments

        Activity

          People

            Unassigned Unassigned
            markap14 Mark Payne
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: