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

HTTP sink not retrying failing requests

    XMLWordPrintable

Details

    Description

      In order to make your issue reports as actionable as possible, please provide the following information, depending on the issue type.

      Bug report

      For bug reports, provide this information, please:

      What Debezium connector do you use and what version?

      Docker image: debezium/server:1.9.4.Final

      What is the connector configuration?

      debezium.sink.type=http
      debezium.sink.http.url={SINK URL}debezium.format.value=json
      debezium.format.key=jsondebezium.source.connector.class=io.debezium.connector.postgresql.PostgresConnector
      debezium.source.offset.storage.file.filename=data/offsets.dat
      debezium.source.offset.flush.interval.ms=0
      debezium.source.database.hostname={POSTGRES HOSTNAME}
      debezium.source.database.port=5432
      debezium.source.database.user={POSTGRES USER}
      debezium.source.database.password={POSTGRES PASSWORD}
      debezium.source.database.dbname={POSTGRES DATABASE}
      debezium.source.database.server.name={SERVER NAME}
      debezium.source.plugin.name=pgoutputdebezium.source.publication.name=outbox_publication
      debezium.source.schema.include.list=public
      debezium.source.table.include.list=public.outboxlog4j.rootLogger=INFO, stdout
      log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
      log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
      log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c)%n  

      What is the captured database version and mode of depoyment?

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

      AWS RDS - Postgres 14.2

      What behaviour do you expect?

      I expect the request to be retried.

      What behaviour do you see?

      Debezium Server's HTTP sink is not retrying failed requests:

      • Scenario:
        1. WAL entry is made, HTTP sink returns error status
        2. WAL entry is made, HTTP sink returns OK status
      • Result
        1. The first message is not retransmitted

      The only scenario where Debezium Server will retransmit the failed messages is when Debezium Server is restarted  and no successful messages were sent before the restart - the xmin and catalog_xmin of the replication slot are not updated in this scenario.

      Additional context: https://groups.google.com/g/debezium/c/m57GAVi5L0k

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

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

      Yes

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

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

      <Your answer>

      How to reproduce the issue using our tutorial deployment?

      <Your answer>

      Feature request or enhancement

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

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

      <Your answer>

      Implementation ideas (optional)

      <Your answer>

      Attachments

        Issue Links

          Activity

            People

              vjuranek@redhat.com Vojtech Juranek
              peterkowalski123@gmail.com Peter Nicholson (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: