Member since
03-26-2020
2
Posts
0
Kudos Received
0
Solutions
05-29-2020
08:11 AM
@Shu_ashu this approach works has a problem that clear-state is working only on stopped processor. I am using ScrollElasticsearch processor and it needs to be cleared before it can be executed again. I tried curl -i -X POST http://localhost:8080/nifi-api/processors/0172101b-be82-11aa-1249-d1383cb1ceba/state/clear-requests but it end-up with conflict status I must stop processor in order to clear-state Do I really have to stop processor? manually or via API - it doesn't seems to me as a good design. Could you Help or give any advice please? Thank u. Petr
... View more
03-27-2020
01:39 PM
1 Kudo
@Petr_Simik No matter which processor you are looking at the stats presented all tell you the same information: In <-- Tells you how many FlowFile were processed from one or more inbound connections over the last rolling 5 minute window. With this processor you have it configured the "wait mode" to leave the FlowFile on the inbound connection. So the processor is constantly looking at the file over and over again until the configured expiration time has elapsed. Read/Write. <-- Tells you how much FlowFile content was read from or written to the NiFi content repository (helps user identify processors that may be disk I/O heavy) Out. <-- Tells you how many FlowFiles have been released to an outbound connection over the last rolling 5 minute window. Here you see a number that reflects only those flowfiles that expired and where sent to your outbound expired connection. Tasks/Time. <-- Tells you how many threads this processor completed execution over the last rolling 5 minutes and the total cumulative time those threads consumed from the CPU. (helps user identify what processors consume lots of CPU time) So the stats you are seeing are not surprising. While this processor works for your use case i guess, it has overhead needing to connect to a distributed map cache on every execution against an inbound FlowFile. If your intent is only to delay a FlowFile for 1 second before it proceeds down the flow path, a better solution may be to just use an updateAttribute processor that creates an attribute with current time and RouteOnAttribute processor that checks to see if that recorded time plus 1000 ms is less than current time. Then loop that check until it is not. Hope this helps, Matt
... View more