-
Bug
-
Resolution: Not a Bug
-
Critical
-
None
-
2.3.0.Alpha1
-
None
-
False
-
None
-
False
-
Critical
Env:
MySQL Server version: 5.7.20
debezium-connector-mysql-2.3.0.Alpha1
Config:
{ "properties": { "connector.class": "io.debezium.connector.mysql.MySqlConnector", "tasks.max": "1", "database.hostname": "", "database.port": "", "database.user": "", "database.password": "", "database.server.name": "mysql_93_auth_test1", "table.include.list": "msx_online.tft_user_auth_res,msx_online.debezium_signal,msx_online.user_base", "database.server.id": "184055", "message.key.columns": "msx_online.tft_user_auth_res:id", "key.converter": "org.apache.kafka.connect.json.JsonConverter", "key.converter.schemas.enable": "false", "value.converter": "org.apache.kafka.connect.json.JsonConverter", "value.converter.schemas.enable": "false", "schema.history.internal.kafka.bootstrap.servers": "hadoop189:9093,hadoop190:9093,hadoop191:9093", "schema.history.internal.kafka.topic": "mysql_93_auth_test1_his", "tombstones.on.delete": "false", "schema.history.internal.skip.unparseable.ddl": "true", "include.schema.changes": "false", "transforms": "Reroute1", "snapshot.mode": "schema_only", "transforms.Reroute1.type": "io.debezium.transforms.ByLogicalTableRouter", "transforms.Reroute1.topic.regex": "(.*)tft_user_auth_res", "transforms.Reroute1.topic.replacement": "mysql_93_auth_test1.msx_online.tft_user_auth_res", "transforms.Reroute1.key.enforce.uniqueness": "false", "signal.data.collection": "msx_online.debezium_signal", "name": "mysql_93_auth_test1", "topic.prefix": "mysql_93_auth_test1" } }
Symptoms:
[2023-05-15 09:15:38,774] ERROR WorkerSourceTask{id=mysql_93_auth_test1-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask:187) io.debezium.DebeziumException: Unexpected error while connecting to MySQL and looking at BINLOG_FORMAT mode: at io.debezium.connector.mysql.MySqlConnection.isBinlogFormatRow(MySqlConnection.java:385) at io.debezium.connector.mysql.MySqlConnectorTask.validateBinlogConfiguration(MySqlConnectorTask.java:257) at io.debezium.connector.mysql.MySqlConnectorTask.start(MySqlConnectorTask.java:89) at io.debezium.connector.common.BaseSourceTask.startIfNeededAndPossible(BaseSourceTask.java:260) at io.debezium.connector.common.BaseSourceTask.poll(BaseSourceTask.java:169) at org.apache.kafka.connect.runtime.WorkerSourceTask.poll(WorkerSourceTask.java:289) at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:256) at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:185) at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:234) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:824) at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:444) at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:237) at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) at io.debezium.jdbc.JdbcConnection.lambda$patternBasedFactory$1(JdbcConnection.java:241) at io.debezium.jdbc.JdbcConnection$ConnectionFactoryDecorator.connect(JdbcConnection.java:127) at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:873) at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:868) at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:621) at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:495) at io.debezium.connector.mysql.MySqlConnection.isBinlogFormatRow(MySqlConnection.java:380) ... 13 more Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151) at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167) at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:378) at com.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:205) at com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1429) at com.mysql.cj.NativeSession.connect(NativeSession.java:133) at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:944) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:814) ... 23 more Caused by: javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake at java.base/sun.security.ssl.SSLSocketImpl.handleEOF(SSLSocketImpl.java:1562) at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1391) at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1296) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:416) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:388) at com.mysql.cj.protocol.ExportControlled.performTlsHandshake(ExportControlled.java:347) at com.mysql.cj.protocol.StandardSocketFactory.performTlsHandshake(StandardSocketFactory.java:191) at com.mysql.cj.protocol.a.NativeSocketConnection.performTlsHandshake(NativeSocketConnection.java:101) at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:369) ... 28 more Suppressed: java.net.SocketException: Broken pipe (Write failed) at java.base/java.net.SocketOutputStream.socketWrite0(Native Method) at java.base/java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:110) at java.base/java.net.SocketOutputStream.write(SocketOutputStream.java:150) at java.base/sun.security.ssl.SSLSocketOutputRecord.encodeAlert(SSLSocketOutputRecord.java:83) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:405) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:312) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:428) ... 33 more Caused by: java.io.EOFException: SSL peer shut down incorrectly at java.base/sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:483) at java.base/sun.security.ssl.SSLSocketInputRecord.readFully(SSLSocketInputRecord.java:461) at java.base/sun.security.ssl.SSLSocketInputRecord.decodeInputRecord(SSLSocketInputRecord.java:243) at java.base/sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:181) at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:111) at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1383) ... 35 more [2023-05-15 09:15:38,780] INFO Stopping down connector (io.debezium.connector.common.BaseSourceTask:294)
But it works at Debezium Version 1.9.
Config:
{ "name": "mysql_93_auth_test1", "config": { "connector.class": "io.debezium.connector.mysql.MySqlConnector", "tasks.max": "1", "database.hostname": "", "database.port": "", "database.user": "", "database.password": "", "database.server.name": "mysql_93_auth_test1", "table.include.list": "msx_online.tft_user_auth_res,msx_online.debezium_signal,msx_online.user_base", "database.server.id": "184055", "message.key.columns": "msx_online.tft_user_auth_res:id", "key.converter": "org.apache.kafka.connect.json.JsonConverter", "key.converter.schemas.enable": "false", "value.converter": "org.apache.kafka.connect.json.JsonConverter", "value.converter.schemas.enable": "false", "database.history.kafka.bootstrap.servers": "hadoop189:9093,hadoop190:9093,hadoop191:9093", "database.history.kafka.topic": "mysql_93_auth_test1_his", "tombstones.on.delete": "false", "database.history.skip.unparseable.ddl": "true", "include.schema.changes": "false", "transforms": "Reroute1", "snapshot.mode": "schema_only", "transforms.Reroute1.type": "io.debezium.transforms.ByLogicalTableRouter", "transforms.Reroute1.topic.regex": "(.*)tft_user_auth_res", "transforms.Reroute1.topic.replacement": "mysql_93_auth_test1.msx_online.tft_user_auth_res", "transforms.Reroute1.key.enforce.uniqueness": "false", "signal.data.collection": "msx_online.debezium_signal", "name": "mysql_93_auth_test1" } }