com.alibaba.otter.canal.protocol.exception.CanalClientException: deserializer failed at com.alibaba.otter.canal.client.CanalMessageDeserializer.deserializer(CanalMessageDeserializer.java:54) ~[canal.client-1.1.2.jar:na] at com.alibaba.otter.canal.client.impl.SimpleCanalConnector.receiveMessages(SimpleCanalConnector.java:322) ~[canal.client-1.1.2.jar:na] at com.alibaba.otter.canal.client.impl.SimpleCanalConnector.getWithoutAck(SimpleCanalConnector.java:314) ~[canal.client-1.1.2.jar:na] at com.alibaba.otter.canal.client.impl.SimpleCanalConnector.getWithoutAck(SimpleCanalConnector.java:286) ~[canal.client-1.1.2.jar:na] at com.jiuhuar.jmb.admin.core.CanalCoreEngine.getMessage(CanalCoreEngine.java:110) [classes/:na] at com.jiuhuar.jmb.admin.core.CanalCoreEngine.engine(CanalCoreEngine.java:81) [classes/:na] at com.jiuhuar.jmb.admin.core.CanalEntryRunner.run(CanalEntryRunner.java:28) [classes/:na] at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:723) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:713) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at org.springframework.boot.SpringApplication.afterRefresh(SpringApplication.java:703) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:304) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.13.RELEASE.jar:1.5.13.RELEASE] at com.jiuhuar.jmb.admin.MagpieBridgeApplication.main(MagpieBridgeApplication.java:18) [classes/:na] Caused by: com.alibaba.otter.canal.protocol.exception.CanalClientException: something goes wrong with reason: something goes wrong with channel:[id: 0x2f8dae0b, /127.0.0.1:64679 => /127.0.0.1:11111], exception=com.alibaba.otter.canal.server.exception.CanalServerException: destination:example should start first
at com.alibaba.otter.canal.client.CanalMessageDeserializer.deserializer(CanalMessageDeserializer.java:46) ~[canal.client-1.1.2.jar:na] ... 13 common frames omitted
这个问题搞我几个小时了。已经连续加班好久了。 请问这个大概是个什么问题啊?
原提问者GitHub用户xmt1139057136
com.alibaba.otter.canal.client.CanalMessageDeserializer.deserializer(CanalMessageDeserializer.java:54) ~[canal.client-1.1.2.jar:na]
估计客户端是protobuf模式,而服务端是flatMessage模式
原回答者GitHub用户agapple
这个异常信息是由 Canal 客户端抛出的,大致意思是 Canal 客户端无法反序列化消息,具体原因是因为 Canal 客户端无法从 Canal 服务器获取消息。具体而言,异常信息中的以下部分表明了问题所在:
Caused by: com.alibaba.otter.canal.protocol.exception.CanalClientException: something goes wrong with reason: something goes wrong with channel:[id: 0x2f8dae0b, /127.0.0.1:64679 => /127.0.0.1:11111], exception=com.alibaba.otter.canal.server.exception.CanalServerException: destination:example should start first 从异常信息中可以看出,Canal 客户端连接的 Canal 服务器出现了问题,具体原因是 Canal 服务器中名为 example 的目标数据存储没有启动。因此,您需要检查 Canal 服务器中名为 example 的目标数据存储是否已经启动,如果没有启动,请启动它并重新运行 Canal 客户端。如果已经启动,请检查 Canal 客户端的配置是否正确,例如 Canal 服务器的地址、端口、用户名、密码等。如果还有问题,请提供更多的信息,以便我更好地帮助您解决问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。