Member since
07-30-2019
3436
Posts
1633
Kudos Received
1012
Solutions
My Accepted Solutions
| Title | Views | Posted |
|---|---|---|
| 159 | 01-27-2026 12:46 PM | |
| 582 | 01-13-2026 11:14 AM | |
| 1291 | 01-09-2026 06:58 AM | |
| 1045 | 12-17-2025 05:55 AM | |
| 509 | 12-17-2025 05:34 AM |
10-22-2019
05:57 AM
@Kit2020 You will want to use the MergeContent or MergeRecord processor to merge you incoming data from Kafka. NiFi FlowFiles consists of two parts: 1. FlowFile attributes/metadata --> This information is held in heap memory 2. FlowFile content . --> held in NiFi's content repository on disk. The merge based processor above will hold the FlowFile attributes of every FlowFile being merged (allocated to a merge bin) in heap memory. Considering you are talking about merging 10 million FlowFiles, you will not be able to merge all of these using a single merge processor without likely encountering an out of memory condition. A better approach is to have two merge processor in series with the first merging batches of min 10000 to 20000 and the second merging those into another batch resulting in the merging of all FlowFiles. A merge processor bin is eligible to be merged when the minimum set values are met. Meaning if you set min entires/records to 1 and max to 10000, the bin can merge with only one FlowFile. At time of execution the thread grabs what is in inbound connection at that moment in time and allocates it to a bin. Then checks if that bin met mins and if so merges it. So makes sure your minimums on your multiple merge processors are set high enough (for example 10000 on first and 1000 on merge processor number 2, result 10,000,000 merged FlowFiles) Now if you do not know the exact number of records you need to merge, set the second merge processor mins to a higher value than you expect to receive. Then set your "Max bin age" to a value you can accept for data latency. The max bin age is your force merge setting. So even if min vales are not reached, a bin that has existed for this length of time will be forced to merge. Setting bin age on both processor is important. With high value on second then first. This allows time for a bin from merge one (typically last created) that may not meet 10000 min to get merged while second is still waiting. Hope this helps, Matt
... View more
10-21-2019
04:22 AM
Hi, Did adding Nifi hostnames to the load balancer certificate's SAN help?
... View more
10-18-2019
06:22 AM
@koshay This error is telling you that the user running the NiFi process is unable to see that file. ...java.nio.file.NoSuchFileException If the file really does exist at "/cygdrive/Windows/System32/LogFiles/Firewall/pfirewall.log", then the issue is more likely permissions on one of the directories in that path preventing the NiFi java process user from being able traverse that directory tree to the log file. If the NiFi Java process user was able to traverse that entire directory tree, we would expect a different error related to permissions on the log file. Hope this helps, Matt
... View more
10-11-2019
12:15 PM
Thank you Matt. Will take this direction and explore custom processor in subsequent iterations. Ram
... View more
10-11-2019
07:38 AM
Hello @shrujana The ListenHTTP processor setups an internal Jetty server that listens for inbound http connections on the configured port. It is not used to establish connections to external services. It may e helpful if you provide more detail about your use case(s) along with your current dataflow design specifics. How do you interface with your micro-services when not using NIFi?
... View more
10-10-2019
10:15 AM
Hello @girish6 Your first EL statement would work as well once you correct the single quote marks around the Z. Many outside text editors end up messing up the single quotes, so the NiFi EL ends up being incorrect when you copy/paste. NiFi's EL editor built in to the processor property text blocks can help identify when the EL format is wrong. In above you can see your NiFi EL statement as copied and pasted on line 3. You'll notice the color coding indicates an issue with the function's input parameters. Line 1 has the properly formatted version of that same NiFi EL statement. Be careful when using copy paste from some external editors. Thank you, Matt
... View more
10-10-2019
09:58 AM
1 Kudo
Hello @girish6, NiFi Expression language does have a function that will increment a number, but it does not reset back to zero (unless you restart NiFi) and is incremented globally across call calls to that function. So while this function will give each FlowFile a unique filename per NiFi node, there is no guarantee that they will be sequential or will start at 0 for new source zip file you extract. If this works for your use case the NiFi Expression language statement would look like this in the UpdateAttribute processor: If you are just looking for filename uniqueness, a better solution may be to instead append the FlowFile's uniquely assigned UUID to the filename instead as follows: Tips: 1. There is an expression language guide in the embedded help of your NiFi installation found by clicking on the global menu icon in upper right corner. 2. Within a NiFi processor property that support NiFi EL you can display a list of functions with details by typing "${" (signifies start of an EL statement) and then hold "Control" while clicking space bar. This also works if you are mid statement and type ":"then "control" + click spacebar. Examples: file-${ (then cntrl+spacebar) ${uuid: (then cntrl+spacebar) Hope this helps, Matt
... View more
10-09-2019
11:16 AM
Thank you. It really helps 😃
... View more
09-04-2019
05:02 AM
writes attribute of some processors (SplitRecord, ReplaceText ) does not contains the error it writes during execution. How and where to identify the error in that case?
... View more
08-22-2019
04:31 AM
@puneetn HI, I'm having the same scenario. I wonder, have you ever come up with a solution? Thanks, Rosa
... View more