我有一个非常简单的拓扑结构,它从 ES 索引 (AggregationSpout) 中喷出,获取页面 (FetcherBolt) 并使用 StatusUpdaterBolt 将 ES 状态更新为“FETCHED”。
但是,我注意到日志文件中有这样的警告:
[警告] 找不到 357dc2fcb59c6457884a8f7a83794c4cf77f490a3acfd849a792a35153ed4665 的未确认元组
相应的调试信息如下所示: ...
2017-12-06 12:44:53.572 oetTtracer elasticsearch[ client ][transport_client_boss][T#2][TRACE][214][indices:data/write/bulk]收到来自[{ESPatentNode-1}{S4C2h8WjRuu6MpM25oM-的响应3w}{Fvjny3VaQl2w45hPXZ5A9g}{127.0.0.1}{127.0.0.1:9300}] 2017-12-06 12:44:53.572 cdsepStatusUpdaterBolt elasticsearch[ client ][listener][T#1][DEBUG] afterBulk [105] with 47 responses 2017-12-06 12:44:53.572 cdsepStatusUpdaterBolt elasticsearch[ client ][listener][T#1] [DEBUG] Acked 1 tuple(s) for ID 5967f802c84e3e9c6ac22a3184e0665b850779cba9050fa4ec910a41f9f90655 2017-12-06 12:44:53.573 cdsepStatusUpdaterBolt elasticsearch[ client] [侦听器] [t#1] [debug] ID 357DC2FCB59C6457884A8F7A83794CF77F490A3ACFDD849A79A792A35151515153ED4665ED4665 2017-12-12-12-12-12:44:44:44:44:44:(s) for ID 092e59cd1ebb004884babfaf1d6ca4b7505b3dcb1b3cb3a52b9072d647fb7a93 2017-12-06 12:44:53.573 cdsepStatusUpdaterBolt elasticsearch[ client ][listener][T#1] [WARN] Could not find unacked tuple for 357dc2fcb59c6457884a8f7a83794c4cf77f490a3acfd849a792a35153ed4665
我想了解的是:
- 为什么可以将多个元组附加到一个 ID
- 如何在 StatusUpdaterBolt 的 afterBulk 方法中通过“响应”循环两次相同的“waitAck”缓存元素
在此先感谢您的帮助!