当将一个分片分成两个子分片时,它的父分片会关闭。期望记录处理器(这里使用了KCL)在这种情况下进行检查点,如下面的KCL源代码所示:
问题如下:
有什么想法吗?
提前感谢。
try {
recordProcessor.shutdown(recordProcessorCheckpointer, reason);
String lastCheckpointValue = recordProcessorCheckpointer.getLastCheckpointValue();
if (reason == ShutdownReason.TERMINATE) {
if ((lastCheckpointValue == null)
|| (!lastCheckpointValue.equals(SentinelCheckpoint.SHARD_END.toString()))) {
throw new IllegalArgumentException("Application didn't checkpoint at end of shard "
+ shardInfo.getShardId());
}
}
问题如下:
这个检查点是否必不可少?
如果记录处理器没有进行检查点并吸收异常会发生什么?
有什么想法吗?
提前感谢。