Repository Analysis

alibaba/canal

阿里巴巴 MySQL binlog 增量订阅&消费组件

8.1 Low AI signal View on GitHub
8.1
Adjusted Score
8.1
Raw Score
100%
Time Factor
2026-05-29
Last Push
29,694
Stars
Java
Language
151,398
Lines of Code
1251
Files
186
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 139HIGH 0MEDIUM 0LOW 47

Pattern Findings

186 matches across 4 categories. Click a row to expand file-level details.

Hallucination Indicators139 hits · 1175 pts
SeverityFileLineSnippet
CRITICAL…a/otter/canal/deployer/admin/CanalAdminController.java193 Collection<File> files = org.apache.commons.io.FileUtils.listFiles(new File("../logs/canal/"),
CRITICAL…a/otter/canal/deployer/admin/CanalAdminController.java210 Collection<File> files = org.apache.commons.io.FileUtils.listFiles(new File(desPath),
CRITICAL…anal/admin/handler/HandshakeInitializationHandler.java39 final byte[] seed = org.apache.commons.lang3.RandomUtils.nextBytes(8);
CRITICAL…rver/netty/handler/HandshakeInitializationHandler.java39 final byte[] seed = org.apache.commons.lang3.RandomUtils.nextBytes(8);
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java656 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.Packet.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1439 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.Ack.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java2161 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.Handshake.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3019 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.ClientAuth.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3776 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.ServerAdmin.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4423 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.InstanceAdmin.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java5485 // Construct using com.alibaba.otter.canal.protocol.AdminPacket.LogAdmin.newBuilder()
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java142 return com.alibaba.otter.canal.protocol.AdminPacket.getDescriptor().getEnumTypes().get(0);
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java401 com.alibaba.otter.canal.protocol.AdminPacket.PacketType result = com.alibaba.otter.canal.protocol.AdminPacket.Pack
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java436 if (type_ != com.alibaba.otter.canal.protocol.AdminPacket.PacketType.PACKAGETYPECOMPATIBLEPROTO2.getNumber()) {
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java461 if (type_ != com.alibaba.otter.canal.protocol.AdminPacket.PacketType.PACKAGETYPECOMPATIBLEPROTO2.getNumber()) {
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java693 return com.alibaba.otter.canal.protocol.AdminPacket.Packet.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java707 com.alibaba.otter.canal.protocol.AdminPacket.Packet result = new com.alibaba.otter.canal.protocol.AdminPacket.Pa
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java765 if (other == com.alibaba.otter.canal.protocol.AdminPacket.Packet.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java929 com.alibaba.otter.canal.protocol.AdminPacket.PacketType result = com.alibaba.otter.canal.protocol.AdminPacket.Pa
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1001 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.Packet();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1472 return com.alibaba.otter.canal.protocol.AdminPacket.Ack.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1486 com.alibaba.otter.canal.protocol.AdminPacket.Ack result = new com.alibaba.otter.canal.protocol.AdminPacket.Ack(t
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1539 if (other == com.alibaba.otter.canal.protocol.AdminPacket.Ack.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java1734 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.Ack();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java2194 return com.alibaba.otter.canal.protocol.AdminPacket.Handshake.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java2208 com.alibaba.otter.canal.protocol.AdminPacket.Handshake result = new com.alibaba.otter.canal.protocol.AdminPacket
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java2261 if (other == com.alibaba.otter.canal.protocol.AdminPacket.Handshake.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java2447 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.Handshake();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3056 return com.alibaba.otter.canal.protocol.AdminPacket.ClientAuth.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3070 com.alibaba.otter.canal.protocol.AdminPacket.ClientAuth result = new com.alibaba.otter.canal.protocol.AdminPacke
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3128 if (other == com.alibaba.otter.canal.protocol.AdminPacket.ClientAuth.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3425 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.ClientAuth();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3807 return com.alibaba.otter.canal.protocol.AdminPacket.ServerAdmin.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3821 com.alibaba.otter.canal.protocol.AdminPacket.ServerAdmin result = new com.alibaba.otter.canal.protocol.AdminPack
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java3870 if (other == com.alibaba.otter.canal.protocol.AdminPacket.ServerAdmin.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4011 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.ServerAdmin();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4456 return com.alibaba.otter.canal.protocol.AdminPacket.InstanceAdmin.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4470 com.alibaba.otter.canal.protocol.AdminPacket.InstanceAdmin result = new com.alibaba.otter.canal.protocol.AdminPa
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4520 if (other == com.alibaba.otter.canal.protocol.AdminPacket.InstanceAdmin.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java4734 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.InstanceAdmin();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java5524 return com.alibaba.otter.canal.protocol.AdminPacket.LogAdmin.getDefaultInstance();
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java5538 com.alibaba.otter.canal.protocol.AdminPacket.LogAdmin result = new com.alibaba.otter.canal.protocol.AdminPacket.
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java5600 if (other == com.alibaba.otter.canal.protocol.AdminPacket.LogAdmin.getDefaultInstance()) return this;
CRITICAL…java/com/alibaba/otter/canal/protocol/AdminPacket.java6092 DEFAULT_INSTANCE = new com.alibaba.otter.canal.protocol.AdminPacket.LogAdmin();
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java876 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.Entry.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java2463 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.Header.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java3637 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java4821 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.Column.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java5562 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java6519 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.RowData.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java6915 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java7227 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java7539 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java8493 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.RowChange.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java9145 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java9457 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java10241 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.TransactionBegin.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java10732 com.google.protobuf.AbstractMessageLite.Builder.addAll(
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java11411 // Construct using com.alibaba.otter.canal.protocol.CanalEntry.TransactionEnd.newBuilder()
CRITICAL…/java/com/alibaba/otter/canal/protocol/CanalEntry.java11893 com.google.protobuf.AbstractMessageLite.Builder.addAll(
79 more matches not shown…
Over-Commented Block45 hits · 45 pts
SeverityFileLineSnippet
LOW…a/com/alibaba/otter/canal/deployer/CanalConstants.java61// public static final String CANAL_MQ_CANALGETTIMEOUT = ROOT + "." + "mq.canalGetTimeout";
LOW…com/taobao/tddl/dbsync/binlog/event/RowsLogBuffer.java501 final int d = (int) (i64 / 1000000);
LOW…com/taobao/tddl/dbsync/binlog/event/RowsLogBuffer.java721 break;
LOW…otter/canal/parse/driver/mysql/packets/Capability.java21 int CLIENT_LONG_FLAG = 0x00000004;
LOW…otter/canal/parse/driver/mysql/packets/Capability.java41 int CLIENT_ODBC = 0x00000040;
LOW…otter/canal/parse/driver/mysql/packets/Capability.java61 // https://dev.mysql.com/doc/internals/en/packet-OK_Packet.html
LOW…otter/canal/parse/driver/mysql/packets/Capability.java121 // Server: Can send multiple resultsets for COM_QUERY.
LOW…otter/canal/parse/driver/mysql/packets/Capability.java141 // Server:Understands length-encoded integer for auth response data in
LOW…/mysql/packets/client/BinlogDumpGTIDCommandPacket.java41 // 3. [4] binlog-filename-len
LOW…/canal/parse/inbound/mysql/tsdb/DatabaseTableMeta.java401 // content.put("useSchema", schema);
LOWadmin/admin-ui/tests/unit/components/Breadcrumb.spec.js81 // const second = breadcrumbArray.at(1)
LOWadmin/admin-ui/src/icons/svgo.yml1# replace default config
LOWcharts/canal-admin/Chart.yaml1apiVersion: v2
LOWcharts/canal-admin/Chart.yaml21# incremented each time you make changes to the application. Versions are not expected to
LOWcharts/canal-admin/values.yaml41podSecurityContext: {}
LOWcharts/canal-server/Chart.yaml1apiVersion: v2
LOWcharts/canal-server/Chart.yaml21# incremented each time you make changes to the application. Versions are not expected to
LOWcharts/canal-server/values.yaml41podSecurityContext: {}
LOWcharts/canal-server/values.yaml81 # We usually recommend not to specify default resources and to leave this as a conscious
LOW…a/otter/canal/server/netty/handler/SessionHandler.java121 // if (get.getTimeout() == -1) {//是否是初始值
LOW…a/otter/canal/server/netty/handler/SessionHandler.java161 // ByteBuffer byteBuffer = (ByteBuffer)
LOW…ter/canal/server/embedded/CanalServerWithEmbedded.java401 positionRanges = canalInstance.getMetaManager().removeBatch(clientIdentity, batchId); // 更新位置
LOW…ickhouse/src/test/resources/clickhouse/mytest_user.yml21
LOW…ouse/src/test/resources/clickhouse/mytest_customer.yml21
LOW…ickhouse/src/main/resources/clickhouse/mytest_user.yml21
LOW…nt-adapter/launcher/src/main/resources/application.yml61# key: mysql1
LOW…nt-adapter/launcher/src/main/resources/application.yml81# jdbc.username: postgres
LOW…nt-adapter/launcher/src/main/resources/application.yml101# - name: phoenix
LOWclient-adapter/es7x/src/main/resources/es7/customer.yml21# },
LOWclient-adapter/es7x/src/main/resources/es7/customer.yml41# }
LOW…libaba/otter/canal/client/adapter/rdb/test/DBTest.java61
LOW…otter/canal/client/adapter/rdb/test/SqlParserTest.java1//wpackage com.alibaba.otter.canal.client.adapter.rdb.test;
LOW…otter/canal/client/adapter/rdb/test/SqlParserTest.java21// }
LOW…otter/canal/client/adapter/rdb/test/SqlParserTest.java41// + " `name` varchar(30) NOT NULL,\n" + " `c_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,\n
LOW…otter/canal/client/adapter/rdb/test/SqlParserTest.java61// // // 使用select访问者进行select的关键信息打印
LOW…otter/canal/client/adapter/rdb/test/SqlParserTest.java81// StringWriter out = new StringWriter();
LOW…ent-adapter/rdb/src/main/resources/rdb/mytest_user.yml21
LOW…otter/canal/client/adapter/es6x/test/SqlParseTest.java41
LOWclient-adapter/es6x/src/main/resources/es6/customer.yml21# "type": "long"
LOWclient-adapter/es6x/src/main/resources/es6/customer.yml41# "customer":"order"
LOW…pter/hbase/src/main/resources/hbase/mytest_person2.yml21 birthday: BIRTHDAY
LOW…pter/hbase/src/main/resources/hbase/mytest_person2.yml41# $UNSIGNED_INT 对应PHOENIX里的UNSIGNED_INT 4字节
LOW…pter/hbase/src/main/resources/hbase/mytest_person2.yml61# $VARBINARY 对应PHOENIX里的VARBINARY 动态长度
LOWclient-adapter/es8x/src/main/resources/es8/customer.yml21# },
LOWclient-adapter/es8x/src/main/resources/es8/customer.yml41# }
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippet
LOW…com/taobao/tddl/dbsync/binlog/event/QueryLogEvent.java252 * When adding new status vars, please don't forget to update the
Verbosity Indicators1 hit · 2 pts
SeverityFileLineSnippet
LOW…com/taobao/tddl/dbsync/binlog/event/QueryLogEvent.java556 * This variable stores the default collation for the utf8mb4 character set.