0

我已经使用此处找到的配方安装了 CDAP 沙箱的二进制文件。我正在构建一个插件,并且可能有一个调试器阻止了工作。我重新启动了运行沙箱的 Linux PC,现在当我尝试启动 CDAP 沙箱时,最终出现错误:

2020-10-04 09:05:57,507 - ERROR [main:o.a.t.s.SnapshotCodecProvider@122] - Unable to read transaction state version:
java.io.EOFException: null
        at org.apache.tephra.snapshot.BinaryDecoder.readByte(BinaryDecoder.java:106) ~[org.apache.tephra.tephra-core-0.15.0-incubating.jar:0.15.0-incubating]
        at org.apache.tephra.snapshot.BinaryDecoder.readInt(BinaryDecoder.java:48) ~[org.apache.tephra.tephra-core-0.15.0-incubating.jar:0.15.0-incubating]

我的直觉是,上次 CDAP 运行时,它没有机会为运行中的运行写入事务状态,现在我损坏了一些状态。由于我现在只是沙盒测试,我很乐意冷启动CDAP。不幸的是,我还没有找到任何食谱。有没有人见过类似的东西或有冷启动 CDAP 沙箱的秘诀?

4

1 回答 1

0

正如您在评论中提到的,删除数据和日志目录可以解决问题,但会重置沙箱。CDAP 沙箱在单个 java 进程上运行,因此它没有高可用性 (HA)。当进程突然被杀死时,它可能最终处于损坏状态。

于 2020-11-02T23:04:55.143 回答