{"record":{"id":"dde674dc4a502bd5","repo":"alibaba/canal","slug":"mq-not-support-this-method-dde674","errorCode":null,"errorMessage":"mq not support this method","messagePattern":"mq not support this method","errorType":"exception","errorClass":"CanalClientException","httpStatus":null,"severity":"error","filePath":"client/src/main/java/com/alibaba/otter/canal/client/rabbitmq/RabbitMQCanalConnector.java","lineNumber":164,"sourceCode":"    @Override\n    public void unsubscribe() throws CanalClientException {\n        // 取消订阅 直接强行断开吧\n        this.disconnect();\n    }\n\n    @Override\n    public Message get(int batchSize) throws CanalClientException {\n        return null;\n    }\n\n    @Override\n    public Message get(int batchSize, Long timeout, TimeUnit unit) throws CanalClientException {\n        return null;\n    }\n\n    @Override\n    public Message getWithoutAck(int batchSize) throws CanalClientException {\n        throw new CanalClientException(\"mq not support this method\");\n    }\n\n    @Override\n    public Message getWithoutAck(int batchSize, Long timeout, TimeUnit unit) throws CanalClientException {\n        throw new CanalClientException(\"mq not support this method\");\n    }\n\n    @Override\n    public void ack(long batchId) throws CanalClientException {\n        throw new CanalClientException(\"mq not support this method\");\n    }\n\n    @Override\n    public void rollback(long batchId) throws CanalClientException {\n        throw new CanalClientException(\"mq not support this method\");\n\n    }\n","sourceCodeStart":146,"sourceCodeEnd":182,"githubUrl":"https://github.com/alibaba/canal/blob/87be50e87686a3e8af08c368d0e1ffd1f59eb04a/client/src/main/java/com/alibaba/otter/canal/client/rabbitmq/RabbitMQCanalConnector.java#L146-L182","documentation":"Error \"mq not support this method\" thrown in alibaba/canal.","triggerScenarios":"Thrown at client/src/main/java/com/alibaba/otter/canal/client/rabbitmq/RabbitMQCanalConnector.java:164 when the library encounters an invalid state.","commonSituations":"Unsupported method on RabbitMQ connector. Keep the guard; only MQ-semantics operations are valid on this connector type.","solutions":["Do not call subscribe/unSubscribe/rollback on the RabbitMQ connector; MQ connectors only support get/ack.","Configure queue/exchange binding in RabbitMQ or connector properties instead."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"87be50e87686a3e8af08c368d0e1ffd1f59eb04a","analyzedAt":"2026-08-14T04:30:11.918Z","schemaVersion":2},"datasetVersion":"2026-08-14T05:17:29.042Z"}