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

Debezium obtained the columns added after the alter table operation was performed while using postgresql connector

    XMLWordPrintable

Details

    • False
    • None
    • False

    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?

      debezium-connector-postgres version 1.5.0.Final

      What is the connector configuration?

      {     "snapshot.mode":"never",     "database.user":"postgres",     "offset.flush.interval.ms":"2000",     "database.password":"********",     "offset.storage":"org.apache.kafka.connect.storage.FileOffsetBackingStore",     "database.server.name":"pg_connector",     "offset.storage.file.filename":"../conf/offset",     "slot.drop.on.stop":"false",     "connector.class":"io.debezium.connector.postgresql.PostgresConnector",     "database.port":"16234",     "slot.name":"pg_slot",     "tombstones.on.delete":"false",     "database.hostname":"xx.xx.xx.xx",     "database.dbname":"test",     "interval.handling.mode":"string",     "plugin.name":"decoderbufs",     "name":"pg_selector" }

      What is the captured database version and mode of depoyment?

      PostgreSQL v.12.3,  on-premises

      What behaviour do you expect?

      After executing these sqls:
      create table if not exists myschema.t1 ( id int4 PRIMARY KEY not null, name varchar(20), date1 timestamp(6), money1 money, float1 float, ts1 timestamp(6));
      INSERT INTO myschema.t1(id, name, date1, money1, float1, ts1) VALUES (1, 'aa', '2022-08-02 11:12:38', '1', NULL, '2022-08-02 11:12:46');
      INSERT INTO myschema.t1(id, name, date1, money1, float1, ts1) VALUES (2, 'bb', '2022-08-01 11:12:38', '2', NULL, '2022-08-01 11:12:46');
      ALTER TABLE myschema.t1 drop column money1;
      ALTER TABLE myschema.t1 add column tmp varchar(255);

      I want to get the value of these fields,(id, name, date1, money1, float1, ts1) .

      What behaviour do you see?

      But in the end what I get is the value of tmp. Debezium mistakenly parsed the money1 field into a tmp field.

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

      yes.

      How to reproduce the issue using our tutorial deployment?

      1. start debezium in embed mode.
      2. execute these sqls: create table if not exists myschema.t1 ( id int4 PRIMARY KEY not null, name varchar(20), date1 timestamp(6), money1 money, float1 float, ts1 timestamp(6));
        INSERT INTO myschema.t1(id, name, date1, money1, float1, ts1) VALUES (1, 'aa', '2022-08-02 11:12:38', '1', NULL, '2022-08-02 11:12:46');
        INSERT INTO myschema.t1(id, name, date1, money1, float1, ts1) VALUES (2, 'bb', '2022-08-01 11:12:38', '2', NULL, '2022-08-01 11:12:46');
        ALTER TABLE myschema.t1 drop column money1;
        ALTER TABLE myschema.t1 add column tmp varchar(255);

      Implementation ideas (optional)

      Why postgresql connector does not need Database schema history properties?

      Attachments

        Activity

          People

            Unassigned Unassigned
            leoloel xing Leo
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: