[ https://issues.apache.org/jira/browse/NIFI-631?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15026099#comment-15026099 ]
Tony Kurc commented on NIFI-631: -------------------------------- [~jskora], [~markap14], I put together both of your patches and rebased them on master. I also put InputRequirements on them and had them reference each other. I started testing them together and things seem to work. I think there may be some minor tweaks needed [~jskora] - I don't understand this code. Won't the if condition never hit? {code} String relativePathString = relativePath.toString() + "/"; if (relativePathString.isEmpty()) { relativePathString = "./"; } {code} This description misled me to misconfigure my flow. I believe that path is set to a relative path, not absolute. Also, the attribute absolute.path is populated but not described. When I wired ListFile and FetchFile together with defaults, they did not work, which I wasn't expecting. I'll upload a flow I made which does work (I used absolute.path in the EL for the file). {code} @WritesAttribute(attribute="path", description="The path is set to the absolute path of the file's directory " + "on filesystem. For example, if the Directory property is set to /tmp, then files picked up from " + "/tmp will have the path attribute set to \"./\". If the Recurse Subdirectories property is set to " + "true and a file is picked up from /tmp/abc/1/2/3, then the path attribute will be set to " + "\"/tmp/abc/1/2/3\"."), {code} Why I believe it is a relative path: {code} attributes.put(CoreAttributes.PATH.key(), relativePathString); {code} Anyhow, they both totally seem to work. Please review my rebasing and changes to unify them together and add InputRequirements. > Create ListFile and FetchFile processors > ---------------------------------------- > > Key: NIFI-631 > URL: https://issues.apache.org/jira/browse/NIFI-631 > Project: Apache NiFi > Issue Type: Improvement > Reporter: Mark Payne > Assignee: Joe Skora > Attachments: > 0001-NIFI-631-Initial-implementation-of-FetchFile-process.patch, > NIFI-631.000.patch > > > This pair of Processors will provide several benefits over the existing > GetFile processor: > 1. Currently, GetFile will continually pull the same files if the "Keep > Source File" property is set to true. There is no way to pull the file and > leave it in the directory without continually pulling the same file. We could > implement state here, but it would either be a huge amount of state to > remember everything pulled or it would have to always pull the oldest file > first so that we can maintain just the Last Modified Date of the last file > pulled plus all files with the same Last Modified Date that have already been > pulled. > 2. If pulling from a network attached storage such as NFS, this would allow a > single processor to run ListFiles and then distribute those FlowFiles to the > cluster so that the cluster can share the work of pulling the data. > 3. There are use cases when we may want to pull a specific file (for example, > in conjunction with ProcessHttpRequest/ProcessHttpResponse) rather than just > pull all files in a directory. GetFile does not support this. -- This message was sent by Atlassian JIRA (v6.3.4#6332)