java - Apache NiFi : FlowFileHandlingException when transfer FlowFile in custom processor

标签 java etl apache-nifi

我在我的自定义 NiFi 处理器中从远程 API 服务获取不同时间范围的数据。

我有时间范围全局计数器,每次迭代都会更新(我正在使用计时器驱动的调度策略)。

当计数器大于最大值时,我想仅从请求(session.get())传输FlowFile,并且SUCCESS> 关系,即不执行额外的逻辑:

session.transfer(requestFlowFile, SUCCESS);

我知道当时间范围收集结束时我无法停止或暂停处理器。所以我尝试使用上述方法作为解决方案。

所有迭代都会顺利进行,直到计数器大于最大值并且处理器尝试从请求传输 FlowFile (session.get())

所以我有这个异常(exception):

由于org.apache.nifi.processor.exception.FlowFileHandlingException而无法处理 session :StandardFlowFileRecord[uuid=459e615b-0ff5-424f-aac7-f95d364cdc13,claim=,offset=0,name=99628180019265,size=0]在本次 session 中未知

这里出了什么问题?或者可能是另一种方法?

最佳答案

该错误意味着传递给 session.transfer() 的流文件来自不同的 session 。您只能在调用 get() 的同一个 session 上调用 Transfer()。

关于java - Apache NiFi : FlowFileHandlingException when transfer FlowFile in custom processor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44189181/

相关文章:

java - 如何使用java代码与系统命令行交互

sql - 将日期时间转换为日期字符串 2019-05-02 12 :00:00 to 2019-05-02

SSIS:插入/更新

java - 使用 C# 中的 jni4net 连接 JVM 时 Web 应用程序出错

java - 用于SQL和性能的Grails 3.0日志记录和监视工具

r - 如何检查新数据提取是否具有相同的结构?

regex - 仅匹配第一次出现的短语

apache-nifi - Apache NiFi : Add column to csv using mapped values

java - 从 Guava RemovalListener 重新插入条目是否安全?

java - 如何正确组合谓词过滤器?