hazelcast Jet 提示 These transforms have nothing attached to them 错误异常解决方法

本文描述了在使用Hazelcast进行批处理时遇到的IllegalArgumentException,原因在于代码中缺失了BatchStage的WriteSink。解决方法是添加中间操作并使用logger()sink进行数据处理。

错误现象:
在使用hazelcast 做批处理时报了如下错误:

java.lang.IllegalArgumentException: These transforms have nothing attached to them: [mapUsingService] at com.hazelcast.jet.impl.pipeline.Planner.validateNoLeakage(Planner.java:248) at com.hazelcast.jet.impl.pipeline.Planner.createDag(Planner.java:86) at com.hazelcast.jet.impl.pipeline.PipelineImpl.toDag(PipelineImpl.java:122) at com.hazelcast.jet.impl.JobCoordinationService.lambda$submitJob$1(JobCoordinationService.java:251) at com.hazelcast.jet.impl.JobCoordinationService.lambda$submitToCoordinatorThread$51(JobCoordinationService.java:1280) at com.hazelcast.jet.impl.JobCoordinationService.lambda$submitToCoordinatorThread$52(JobCoordinationService.java:1301) at com.hazelcast.internal.util.executor.CompletableFutureTask.run(CompletableFutureTask.java:64) at com.hazelcast.internal.util.executor.CachedExecutorServiceDelegate$Worker.run(CachedExecutorServiceDelegate.java:217) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) at com.hazelcast.internal.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:76) at com.hazelcast.internal.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:102)
在这里插入图片描述

问题分析:
一个完成的过程要包括readSourceWriteSink,而代码中缺少了BatchStageWriteSink ,它会认为你对这个数据没有做任何处理

解决方法:
对BatchStage收流,做log打印

BatchStage<Stage2> stage= pipline.readFrom(...);
// TODO: 中间操作
stage.writeTo(Sinks.logger());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值