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

Using pg_replication_slot_advance which is not supported by PostgreSQL10.

XMLWordPrintable

      After some time after starting debezium, the connector raises the following exception.

      See also here(link is zulipchat.).

      Bug report

      Connector log is:

       

      [2023-04-18 11:03:43,411] INFO [dbz-source-public|task-0] Seeking to LSN{8/E2A84298} on the replication slot with command SELECT pg_replication_slot_advance('dbz_connector', '8/E2A84298') (io.debezium.connector.postgresql.connection.PostgresReplicationConnection:364)
      [2023-04-18 11:03:43,412] ERROR [dbz-source-public|task-0] Producer failure (io.debezium.pipeline.ErrorHandler:38)
      io.debezium.DebeziumException: org.postgresql.util.PSQLException: ERROR: 関数pg_replication_slot_advance(unknown, unknown)は存在しません
        ヒント: 指定した名前と引数型に合致する関数がありません。明示的な型変換が必要かもしれません。
        位置: 8
          at io.debezium.connector.postgresql.connection.PostgresReplicationConnection.validateSlotIsInExpectedState(PostgresReplicationConnection.java:380)
          at io.debezium.connector.postgresql.connection.PostgresReplicationConnection.startStreaming(PostgresReplicationConnection.java:328)
          at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.execute(PostgresStreamingChangeEventSource.java:137)
          at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.execute(PostgresStreamingChangeEventSource.java:41)
          at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:174)
          at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:141)
          at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:109)
          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:829)
      Caused by: org.postgresql.util.PSQLException: ERROR: 関数pg_replication_slot_advance(unknown, unknown)は存在しません
        ヒント: 指定した名前と引数型に合致する関数がありません。明示的な型変換が必要かもしれません。
        位置: 8
          at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2676)
          at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2366)
          at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:356)
          at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:496)
          at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:413)
          at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:333)
          at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:319)
          at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:295)
          at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:290)
          at io.debezium.connector.postgresql.connection.PostgresReplicationConnection.validateSlotIsInExpectedState(PostgresReplicationConnection.java:365)
          ... 11 more

       

       

      PostgreSQL log is:

       

      2023-04-18 10:34:55.966 JST [98518] 文:  SELECT pg_replication_slot_advance('dbz_connector', '8/E2A3D6A8')
      2023-04-18 10:37:30.939 JST [98543] ERROR:  関数pg_replication_slot_advance(unknown, unknown)は存在しません(文字位置 8)
      

       

       

      What Debezium connector do you use and what version?

      2.1.1.Final

      What is the connector configuration?

       

      {
        "connector.class": "io.debezium.connector.postgresql.PostgresConnector",
        "database.user": <PG_USERNAME>,
        "database.dbname": <PG_DBNAME>,
        "transforms.RerouteTopic.topic.expression": <SCRIPT_CODE>,
        "slot.name": "dbz_connector",
        "tasks.max": "1",
        "transforms": "unwrap,RerouteTopic",
        "transforms.RerouteTopic.topic.regex": <TABLE_NAME_REGEX>,
        "database.port": "5432",
        "plugin.name": "pgoutput",
        "transforms.RerouteTopic.language": "jsr223.groovy",
        "transforms.RerouteTopic.type": "io.debezium.transforms.ContentBasedRouter",
        "topic.prefix": "pg01",
        "database.hostname": <PG_HOSTNAME>,
        "database.password": <PG_PASSWORD>,
        "transforms.unwrap.drop.tombstones": "true",
        "name": "dbz-source-public",
        "transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState",
        "snapshot.mode": "always"
      }

       

       

      What is the captured database version and mode of depoyment?

      (E.g. on-premises, with a specific cloud provider, etc.)

      • on-premises

      What behaviour do you expect?

      • Message level in the Connector log output when an error occurs is WARN or INFO.

      What behaviour do you see?

      • The message level of the Connector log output when an error occurs is ERROR.
      • Error messages are output to the log on the PostgreSQL side.

      Do you see the same behaviour using the latest relesead Debezium version?

      (Ideally, also verify with latest Alpha/Beta/CR version)

      • I do not have an answer to this question.

      Do you have the connector logs, ideally from start till finish?

      (You might be asked later to provide DEBUG/TRACE level log)

      • No.

      How to reproduce the issue using our tutorial deployment?

      • I do not have an answer to this question.

      Feature request or enhancement

      For feature requests or enhancements, provide this information, please:

      Which use case/requirement will be addressed by the proposed feature?

      • I do not have an answer to this question.

      Implementation ideas (optional)

      • I do not have an answer to this question.

              Unassigned Unassigned
              umachi.0403 Hidetomi Umaki (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: