Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-690

Snapshot failed - no operations allowed after connection closed, history.producer.acks=all

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • None
    • 0.7.5
    • mysql-connector
    • None

    Description

      Job conf:
      "snapshot.mode": "schema_only",
      "snapshot.locking.mode": "none",
      "inconsistent.schema.handling.mode": "fail",
      "include.schema.changes": false,
      "database.history.store.only.monitored.tables.ddl": true,
      "connect.timeout.ms": 120000,
      "database.history.producer.acks": "all"

      History kafka topic:
      Topic:debezium-history-company-db-1019 PartitionCount:1 ReplicationFactor:3 Configs:retention.ms=9223372036854775807,cleanup.policy=delete,retention.bytes=-1
      Topic: debezium-history-company-db-1019 Partition: 0 Leader: 1002 Replicas: 1002,1003,1001 Isr: 1002,1003,1001
      I see debezium DDL writes in it

      Exception is:

      org.apache.kafka.connect.errors.ConnectException: No operations allowed after connection closed. Error code: 0; SQLSTATE: 08003.
      at io.debezium.connector.mysql.AbstractReader.wrap(AbstractReader.java:200)
      at io.debezium.connector.mysql.AbstractReader.failed(AbstractReader.java:178)
      at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:670)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)
      Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
      at com.mysql.jdbc.Util.getInstance(Util.java:408)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:897)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:886)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:860)
      at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1246)
      at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1241)
      at com.mysql.jdbc.ConnectionImpl.createStatement(ConnectionImpl.java:2436)
      at com.mysql.jdbc.ConnectionImpl.createStatement(ConnectionImpl.java:2420)
      at io.debezium.jdbc.JdbcConnection.execute(JdbcConnection.java:309)
      at io.debezium.jdbc.JdbcConnection.execute(JdbcConnection.java:287)
      at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:609)
      ... 3 more
      Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
      The last packet successfully received from the server was 199,756 milliseconds ago.  The last packet sent successfully to the server was 2 milliseconds ago.
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
      at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989)
      at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3556)
      at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3456)
      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3897)
      at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
      at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2677)
      at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2545)
      at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2503)
      at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1369)
      at io.debezium.jdbc.JdbcConnection.query(JdbcConnection.java:390)
      at io.debezium.jdbc.JdbcConnection.query(JdbcConnection.java:347)
      at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:417)
      ... 3 more
      Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
      at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3008)
      at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3466)
      ... 13 more
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            pimpelsang Eero Koplimets (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: