-
Bug
-
Resolution: Done
-
Critical
-
0.9.5.Final, 0.10.0.Beta2
-
None
Debezium does not get the first change after creating the replication slot in PostgreSQL. The problem happens using:
*wal2json
wal2json_rds
wal2json_rds_streaming*
But only in wal2json_rds_streaming, we have a log message of level TRACE saying that you received an empty message. When executing a SELECT in the replication slot, we see that the change has been registered normally and is not empty (postgres_peek_changes.png).
We use Postgres 11 in AWS RDS.
But we also tested with a local postgres https://hub.docker.com/r/debezium/postgres and the problem still occurred. The subsequent changes after the first one are normally caught by the connector. Only the first one misses.
LOG:
_2019-07-16 15:36:39,386 TRACE Postgres|postgres-dev|records-stream-producer Chunk arrived from database ]
} [io.debezium.connector.postgresql.connection.wal2json.StreamingWal2JsonMessageDecoder]
2019-07-16 15:36:39,386 WARN Postgres|postgres-dev|records-stream-producer Got out of order chunk ]
} , recording artifical TX [io.debezium.connector.postgresql.connection.wal2json.StreamingWal2JsonMessageDecoder]
2019-07-16 15:36:39,387 TRACE Postgres|postgres-dev|records-stream-producer Empty change arrived [io.debezium.connector.postgresql.connection.wal2json.StreamingWal2JsonMessageDecoder]
2019-07-16 15:36:39,387 TRACE Postgres|postgres-dev|records-stream-producer Received empty message [io.debezium.connector.postgresql.RecordsStreamProducer]
_