Support Questions

Find answers, ask questions, and share your expertise
Announcements
Celebrating as our community reaches 100,000 members! Thank you!

low activity flows

avatar

I have observed an issue when there is no activity in the flow for about a week then GetFile processor would not pick any new files. Problem has occurred only on one system is one flow. I have set the nifi.bored.yield.duration parameter to 30 minutes hoping to minimize load on the system but I do not know if this is good idea. Any suggestions are welcome.

1 ACCEPTED SOLUTION

avatar
Master Guru

I don't think you want that value set so high, the description of nifi.bored.yield.duration is:

When a processor has no work to do (i.e., is "bored"), this is the amount of time it will wait before checking to see if it has data to work on. This way, it does not use up CPU resources by checking for new work too often. When setting this property, be aware that it could add extra latency for processors that constantly have work to do, as they will always wait this amount of time before checking for more work. The default value is 10 millis.

Setting that to 30 minutes impacts all processors on your flow. You could change the scheduling of GetFile from 0 sec to 1 or 2 seconds and that would save a lot of executions/CPU.

View solution in original post

1 REPLY 1

avatar
Master Guru

I don't think you want that value set so high, the description of nifi.bored.yield.duration is:

When a processor has no work to do (i.e., is "bored"), this is the amount of time it will wait before checking to see if it has data to work on. This way, it does not use up CPU resources by checking for new work too often. When setting this property, be aware that it could add extra latency for processors that constantly have work to do, as they will always wait this amount of time before checking for more work. The default value is 10 millis.

Setting that to 30 minutes impacts all processors on your flow. You could change the scheduling of GetFile from 0 sec to 1 or 2 seconds and that would save a lot of executions/CPU.