-
Bug
-
Resolution: Not a Bug
-
Critical
-
None
-
2.3.0.Alpha1
-
None
-
False
-
-
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" }
}