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

Nifi hangs when running for some time

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 1.13.2
    • None
    • Core Framework
    • None
    • Windows

    Description

      When running for some hours, Nifi seems to stop processing flowfiles. When trying to stop the process to have a look at the queues, it seems that some processors are stuck and cannot be terminated.

      In my particular case, I could not stop (among others) a simple ReplaceText processor, which just has to replace the complete content of a the flowfile by an empty String (so, no special wizardry here).

       

      The thread dump shows this:

      Timer-Driven Process Thread-2" Id=56 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@32f60190
       at java.base@11.0.9.1/jdk.internal.misc.Unsafe.park(Native Method)
       at java.base@11.0.9.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.base@11.0.9.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at org.apache.nifi.controller.repository.FileSystemRepository$ContainerState.waitForArchiveExpiration(FileSystemRepository.java:1660)
       at org.apache.nifi.controller.repository.FileSystemRepository.create(FileSystemRepository.java:609)
       at org.apache.nifi.controller.repository.claim.StandardContentClaimWriteCache.getContentClaim(StandardContentClaimWriteCache.java:63)
       at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:2782)
       at org.apache.nifi.processors.standard.ReplaceText$AlwaysReplace.replace(ReplaceText.java:384)
       at org.apache.nifi.processors.standard.ReplaceText.onTrigger(ReplaceText.java:318)
       at app//org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
       at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1173)
       at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
       at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117)
       at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
      [...]

      So, it seems to wait on some lock. Interestingly, according to the thread dump, there are in total 8 threads waiting for ConditionObject@32f60190.

      Could you please check if I am doing something wrong here?

      Thank you!

       

       

      Attachments

        1. nifi.log
          145 kB
          Roman Kurmanowytsch

        Activity

          People

            Unassigned Unassigned
            roman.k Roman Kurmanowytsch
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: