我有一个作业需要插入一行(到 Redshift 中(,然后等待另一个进程更新其中一个字段中的值。 该字段在启动时为 null,只要它保持null,作业就会等待并每分钟轮询一次。 当字段更新时:如果为 0,则结束 - 报告成功;如果不是 0,则结束 - 报告失败。
我有插入,等待(使用tLoop和Thread.sleep(和查询新行。
但我不知道如何构建我的最后一步。 我有一个 tJavaRow,我在其中检查return_code是否不为空并设置我的循环条件以结束循环。 然后else子句执行睡眠,然后执行继续语句。
从 tJavaRow 我有三个输出:一个是 tJava(空的,因为我必须有一个输出(,然后是两个if条件(流(,只是关闭 RS 连接(如果 rc = 0(,或者 tDie(如果 rc != 0(。
我得到了一个NullPointerException(当然(,但我怀疑我的方法有些不对劲。
我的问题:我如何修复NullPointerExecption(如果这是真正的问题 - 可能不是(,或者我如何改变我的工作来完成我想要的。 我的意思是"...想要吗?
工作图片: 工作当前结构
关闭 - 如果 :(rc != null && rc == 0)
tDie - if :(rc != null && rc != 0)
据我了解这个问题,我希望这会起作用。