debezium / debezium/dbz

Debezium jdbc sink create table failure with Duplicate column name '_geometry' [DBZ-6964]

Open
#1,260 0 comments 0 reactions 1 assignee Claimed by @rk3rn3r View on GitHub
component/jdbc-connector migrated-from-jira type/bug
Dominant language
HTML
Stars
6
Forks
8
Avg merge
2d 19h
Merged PRs (30d)
1

Description

Migrated from [DBZ-6964](https://issues.redhat.com/browse/DBZ-6964)

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

For bug reports, provide this information, please:
h2. What Debezium connector do you use and what version?
2.4.0.CR1

h2. What is the connector configuration?

{code:json}
{
"name": "debezium_avro_jdbc_sink",
"config": {
"name": "debezium_avro_jdbc_sink",
"connector.class": "io.debezium.connector.jdbc.JdbcSinkConnector",
"topics.regex": "test_avro.workdb.*",
"tasks.max": "1",
"connection.username": "",
"connection.password": "",
"connection.url": "jdbc:mysql://localhost:3306/debezium_sink",
"schema.evolution": "basic",
"primary.key.mode": "record_key",
"insert.mode": "upsert",
"delete.enabled": "true",
"quote.identifiers": "true",
"key.converter.schemas.enable": "true",
"value.converter.schemas.enable": "true",
"key.converter.schema.registry.url": "http://localhost:8081",
"value.converter.schema.registry.url": "http://localhost:8081",
"key.converter": "io.confluent.connect.avro.AvroConverter",
"value.converter": "io.confluent.connect.avro.AvroConverter"
}
}
{code}

Topic avro schema:
The record schema "io.debezium.data.geometry.Geometry" by getting the column name problem lead to this exception.

{code:json}
{
"type": "record",
"name": "Envelope",
"namespace": "test_avro.workdb.all_types_table",
"fields": [{
"name": "before",
"type": ["null", {
"type": "record",
"name": "Value",
"fields": [{
"name": "_id",
"type": {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "INT",
"__debezium.source.column.name": "_id"
}
}
}, {
"name": "pt",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "DECIMAL",
"__debezium.source.column.length": "2",
"__debezium.source.column.scale": "1",
"__debezium.source.column.name": "pt"
}
}],
"default": null
}, {
"name": "_tinyint1",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "TINYINT",
"__debezium.source.column.length": "1",
"__debezium.source.column.name": "_tinyint1"
},
"connect.type": "int16"
}],
"default": null
}, {
"name": "_boolean",
"type": ["null", {
"type": "boolean",
"connect.parameters": {
"__debezium.source.column.type": "BOOLEAN",
"__debezium.source.column.name": "_boolean"
}
}],
"default": null
}, {
"name": "_bool",
"type": ["null", {
"type": "boolean",
"connect.parameters": {
"__debezium.source.column.type": "BOOL",
"__debezium.source.column.name": "_bool"
}
}],
"default": null
}, {
"name": "_tinyint",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "TINYINT",
"__debezium.source.column.name": "_tinyint"
},
"connect.type": "int16"
}],
"default": null
}, {
"name": "_tinyint_unsigned",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "TINYINT UNSIGNED",
"__debezium.source.column.length": "2",
"__debezium.source.column.name": "_tinyint_unsigned"
},
"connect.type": "int16"
}],
"default": null
}, {
"name": "_tinyint_unsigned_zerofill",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "TINYINT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "2",
"__debezium.source.column.name": "_tinyint_unsigned_zerofill"
},
"connect.type": "int16"
}],
"default": null
}, {
"name": "_smallint",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "SMALLINT",
"__debezium.source.column.name": "_smallint"
},
"connect.type": "int16"
}],
"default": null
}, {
"name": "_smallint_unsigned",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "SMALLINT UNSIGNED",
"__debezium.source.column.name": "_smallint_unsigned"
}
}],
"default": null
}, {
"name": "_smallint_unsigned_zerofill",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "SMALLINT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "4",
"__debezium.source.column.name": "_smallint_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_mediumint",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "MEDIUMINT",
"__debezium.source.column.name": "_mediumint"
}
}],
"default": null
}, {
"name": "_mediumint_unsigned",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "MEDIUMINT UNSIGNED",
"__debezium.source.column.name": "_mediumint_unsigned"
}
}],
"default": null
}, {
"name": "_mediumint_unsigned_zerofill",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "MEDIUMINT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "8",
"__debezium.source.column.name": "_mediumint_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_int",
"type": ["null", {
"type": "int",
"connect.parameters": {
"__debezium.source.column.type": "INT",
"__debezium.source.column.name": "_int"
}
}],
"default": null
}, {
"name": "_int_unsigned",
"type": ["null", {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "INT UNSIGNED",
"__debezium.source.column.name": "_int_unsigned"
}
}],
"default": null
}, {
"name": "_int_unsigned_zerofill",
"type": ["null", {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "INT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "8",
"__debezium.source.column.name": "_int_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_bigint",
"type": ["null", {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "BIGINT",
"__debezium.source.column.name": "_bigint"
}
}],
"default": null
}, {
"name": "_bigint_unsigned",
"type": ["null", {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "BIGINT UNSIGNED",
"__debezium.source.column.name": "_bigint_unsigned"
}
}],
"default": null
}, {
"name": "_bigint_unsigned_zerofill",
"type": ["null", {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "BIGINT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "16",
"__debezium.source.column.name": "_bigint_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_serial",
"type": {
"type": "long",
"connect.parameters": {
"__debezium.source.column.type": "BIGINT UNSIGNED",
"__debezium.source.column.name": "_serial"
}
}
}, {
"name": "_float",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "FLOAT",
"__debezium.source.column.name": "_float"
}
}],
"default": null
}, {
"name": "_float_unsigned",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "FLOAT UNSIGNED",
"__debezium.source.column.name": "_float_unsigned"
}
}],
"default": null
}, {
"name": "_float_unsigned_zerofill",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "FLOAT UNSIGNED ZEROFILL",
"__debezium.source.column.length": "4",
"__debezium.source.column.name": "_float_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_real",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "REAL",
"__debezium.source.column.name": "_real"
}
}],
"default": null
}, {
"name": "_real_unsigned",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "REAL UNSIGNED",
"__debezium.source.column.name": "_real_unsigned"
}
}],
"default": null
}, {
"name": "_real_unsigned_zerofill",
"type": ["null", {
"type": "float",
"connect.parameters": {
"__debezium.source.column.type": "REAL UNSIGNED ZEROFILL",
"__debezium.source.column.length": "10",
"__debezium.source.column.scale": "7",
"__debezium.source.column.name": "_real_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_double",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE",
"__debezium.source.column.name": "_double"
}
}],
"default": null
}, {
"name": "_double_unsigned",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE UNSIGNED",
"__debezium.source.column.name": "_double_unsigned"
}
}],
"default": null
}, {
"name": "_double_unsigned_zerofill",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE UNSIGNED ZEROFILL",
"__debezium.source.column.length": "10",
"__debezium.source.column.scale": "7",
"__debezium.source.column.name": "_double_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_double_precision",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE PRECISION",
"__debezium.source.column.name": "_double_precision"
}
}],
"default": null
}, {
"name": "_double_precision_unsigned",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE PRECISION UNSIGNED",
"__debezium.source.column.name": "_double_precision_unsigned"
}
}],
"default": null
}, {
"name": "_double_precision_unsigned_zerofill",
"type": ["null", {
"type": "double",
"connect.parameters": {
"__debezium.source.column.type": "DOUBLE PRECISION UNSIGNED ZEROFILL",
"__debezium.source.column.length": "10",
"__debezium.source.column.scale": "7",
"__debezium.source.column.name": "_double_precision_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_numeric",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "NUMERIC",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_numeric"
}
}],
"default": null
}, {
"name": "_numeric_unsigned",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "NUMERIC UNSIGNED",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_numeric_unsigned"
}
}],
"default": null
}, {
"name": "_numeric_unsigned_zerofill",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "NUMERIC UNSIGNED ZEROFILL",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_numeric_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_fixed",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "FIXED",
"__debezium.source.column.length": "40",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_fixed"
}
}],
"default": null
}, {
"name": "_fixed_unsigned",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "FIXED UNSIGNED",
"__debezium.source.column.length": "40",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_fixed_unsigned"
}
}],
"default": null
}, {
"name": "_fixed_unsigned_zerofill",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "FIXED UNSIGNED ZEROFILL",
"__debezium.source.column.length": "40",
"__debezium.source.column.scale": "3",
"__debezium.source.column.name": "_fixed_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_decimal",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "DECIMAL",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "0",
"__debezium.source.column.name": "_decimal"
}
}],
"default": null
}, {
"name": "_decimal_unsigned",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "DECIMAL UNSIGNED",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "0",
"__debezium.source.column.name": "_decimal_unsigned"
}
}],
"default": null
}, {
"name": "_decimal_unsigned_zerofill",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "DECIMAL UNSIGNED ZEROFILL",
"__debezium.source.column.length": "8",
"__debezium.source.column.scale": "0",
"__debezium.source.column.name": "_decimal_unsigned_zerofill"
}
}],
"default": null
}, {
"name": "_date",
"type": ["null", {
"type": "int",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATE",
"__debezium.source.column.name": "_date"
},
"connect.name": "io.debezium.time.Date"
}],
"default": null
}, {
"name": "_datetime",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATETIME",
"__debezium.source.column.name": "_datetime"
},
"connect.name": "io.debezium.time.Timestamp"
}],
"default": null
}, {
"name": "_datetime3",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATETIME",
"__debezium.source.column.length": "3",
"__debezium.source.column.name": "_datetime3"
},
"connect.name": "io.debezium.time.Timestamp"
}],
"default": null
}, {
"name": "_datetime6",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATETIME",
"__debezium.source.column.length": "6",
"__debezium.source.column.name": "_datetime6"
},
"connect.name": "io.debezium.time.MicroTimestamp"
}],
"default": null
}, {
"name": "_datetime_p",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATETIME",
"__debezium.source.column.name": "_datetime_p"
},
"connect.name": "io.debezium.time.Timestamp"
}],
"default": null
}, {
"name": "_datetime_p2",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "DATETIME",
"__debezium.source.column.length": "2",
"__debezium.source.column.name": "_datetime_p2"
},
"connect.name": "io.debezium.time.Timestamp"
}],
"default": null
}, {
"name": "_timestamp",
"type": ["null", {
"type": "string",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "TIMESTAMP",
"__debezium.source.column.length": "6",
"__debezium.source.column.name": "_timestamp"
},
"connect.name": "io.debezium.time.ZonedTimestamp"
}],
"default": null
}, {
"name": "_timestamp0",
"type": ["null", {
"type": "string",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "TIMESTAMP",
"__debezium.source.column.name": "_timestamp0"
},
"connect.name": "io.debezium.time.ZonedTimestamp"
}],
"default": null
}, {
"name": "_char",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "CHAR",
"__debezium.source.column.length": "10",
"__debezium.source.column.name": "_char"
}
}],
"default": null
}, {
"name": "_varchar",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "VARCHAR",
"__debezium.source.column.length": "20",
"__debezium.source.column.name": "_varchar"
}
}],
"default": null
}, {
"name": "_tinytext",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "TINYTEXT",
"__debezium.source.column.name": "_tinytext"
}
}],
"default": null
}, {
"name": "_text",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "TEXT",
"__debezium.source.column.name": "_text"
}
}],
"default": null
}, {
"name": "_mediumtext",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "MEDIUMTEXT",
"__debezium.source.column.name": "_mediumtext"
}
}],
"default": null
}, {
"name": "_longtext",
"type": ["null", {
"type": "string",
"connect.parameters": {
"__debezium.source.column.type": "LONGTEXT",
"__debezium.source.column.name": "_longtext"
}
}],
"default": null
}, {
"name": "_bin",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "BINARY",
"__debezium.source.column.length": "10",
"__debezium.source.column.name": "_bin"
}
}],
"default": null
}, {
"name": "_varbin",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "VARBINARY",
"__debezium.source.column.length": "20",
"__debezium.source.column.name": "_varbin"
}
}],
"default": null
}, {
"name": "_tinyblob",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "TINYBLOB",
"__debezium.source.column.name": "_tinyblob"
}
}],
"default": null
}, {
"name": "_blob",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "BLOB",
"__debezium.source.column.name": "_blob"
}
}],
"default": null
}, {
"name": "_mediumblob",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "MEDIUMBLOB",
"__debezium.source.column.name": "_mediumblob"
}
}],
"default": null
}, {
"name": "_longblob",
"type": ["null", {
"type": "bytes",
"connect.parameters": {
"__debezium.source.column.type": "LONGBLOB",
"__debezium.source.column.name": "_longblob"
}
}],
"default": null
}, {
"name": "_json",
"type": ["null", {
"type": "string",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "JSON",
"__debezium.source.column.name": "_json"
},
"connect.name": "io.debezium.data.Json"
}],
"default": null
}, {
"name": "_enum",
"type": ["null", {
"type": "string",
"connect.version": 1,
"connect.parameters": {
"allowed": "value1,value2,value3",
"__debezium.source.column.type": "ENUM",
"__debezium.source.column.length": "1",
"__debezium.source.column.name": "_enum"
},
"connect.name": "io.debezium.data.Enum"
}],
"default": null
}, {
"name": "_year",
"type": ["null", {
"type": "int",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "YEAR",
"__debezium.source.column.name": "_year"
},
"connect.name": "io.debezium.time.Year"
}],
"default": null
}, {
"name": "_time",
"type": ["null", {
"type": "long",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "TIME",
"__debezium.source.column.name": "_time"
},
"connect.name": "io.debezium.time.MicroTime"
}],
"default": null
}, {
"name": "_point",
"type": ["null", {
"type": "record",
"name": "Point",
"namespace": "io.debezium.data.geometry",
"fields": [{
"name": "x",
"type": "double"
}, {
"name": "y",
"type": "double"
}, {
"name": "wkb",
"type": ["null", "bytes"],
"default": null
}, {
"name": "srid",
"type": ["null", "int"],
"default": null
}],
"connect.doc": "Geometry (POINT)",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "POINT",
"__debezium.source.column.name": "_point"
},
"connect.name": "io.debezium.data.geometry.Point"
}],
"default": null
}, {
"name": "_geometry",
"type": ["null", {
"type": "record",
"name": "Geometry",
"namespace": "io.debezium.data.geometry",
"fields": [{
"name": "wkb",
"type": "bytes"
}, {
"name": "srid",
"type": ["null", "int"],
"default": null
}],
"connect.doc": "Geometry",
"connect.version": 1,
"connect.parameters": {
"__debezium.source.column.type": "GEOMETRY",
"__debezium.source.column.name": "_geometry"
},
"connect.name": "io.debezium.data.geometry.Geometry"
}],
"default": null
}, {
"name": "_linestring",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_polygon",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_multipoint",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_multiline",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_multipolygon",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_geometrycollection",
"type": ["null", "io.debezium.data.geometry.Geometry"],
"default": null
}, {
"name": "_set",
"type": ["null", {
"type": "string",
"connect.version": 1,
"connect.parameters": {
"allowed": "a,b,c,d",
"__debezium.source.column.type": "SET",
"__debezium.source.column.length": "7",
"__debezium.source.column.name": "_set"
},
"connect.name": "io.debezium.data.EnumSet"
}],
"default": null
}],
"connect.name": "test_avro.workdb.all_types_table.Value"
}],
"default": null
}, {
"name": "after",
"type": ["null", "Value"],
"default": null
}, {
"name": "source",
"type": {
"type": "record",
"name": "Source",
"namespace": "io.debezium.connector.mysql",
"fields": [{
"name": "version",
"type": "string"
}, {
"name": "connector",
"type": "string"
}, {
"name": "name",
"type": "string"
}, {
"name": "ts_ms",
"type": "long"
}, {
"name": "snapshot",
"type": [{
"type": "string",
"connect.version": 1,
"connect.parameters": {
"allowed": "true,last,false,incremental"
},
"connect.default": "false",
"connect.name": "io.debezium.data.Enum"
}, "null"],
"default": "false"
}, {
"name": "db",
"type": "string"
}, {
"name": "sequence",
"type": ["null", "string"],
"default": null
}, {
"name": "table",
"type": ["null", "string"],
"default": null
}, {
"name": "server_id",
"type": "long"
}, {
"name": "gtid",
"type": ["null", "string"],
"default": null
}, {
"name": "file",
"type": "string"
}, {
"name": "pos",
"type": "long"
}, {
"name": "row",
"type": "int"
}, {
"name": "thread",
"type": ["null", "long"],
"default": null
}, {
"name": "query",
"type": ["null", "string"],
"default": null
}],
"connect.name": "io.debezium.connector.mysql.Source"
}
}, {
"name": "op",
"type": "string"
}, {
"name": "ts_ms",
"type": ["null", "long"],
"default": null
}, {
"name": "transaction",
"type": ["null", {
"type": "record",
"name": "block",
"namespace": "event",
"fields": [{
"name": "id",
"type": "string"
}, {
"name": "total_order",
"type": "long"
}, {
"name": "data_collection_order",
"type": "long"
}],
"connect.version": 1,
"connect.name": "event.block"
}],
"default": null
}],
"connect.version": 1,
"connect.name": "test_avro.workdb.all_types_table.Envelope"
}
{code}

h2. What is the captured database version and mode of depoyment?
mysql 8
(E.g. on-premises, with a specific cloud provider, etc.)

h2. What behaviour do you expect?
create table correctly

h2. What behaviour do you see?

{code:java}
[2023-09-26 09:30:32,133] WARN [debezium_avro_jdbc_sink|task-0] SQL Error: 1060, SQLState: 42S21 (org.hibernate.engine.jdbc.spi.SqlExceptionHelper:133)
[2023-09-26 09:30:32,133] ERROR [debezium_avro_jdbc_sink|task-0] Duplicate column name '_geometry' (org.hibernate.engine.jdbc.spi.SqlExceptionHelper:138)
[2023-09-26 09:30:32,140] ERROR [debezium_avro_jdbc_sink|task-0] Failed to process record: Failed to process a sink record (io.debezium.connector.jdbc.JdbcSinkConnectorTask:102)
org.apache.kafka.connect.errors.ConnectException: Failed to process a sink record
at io.debezium.connector.jdbc.JdbcChangeEventSink.execute(JdbcChangeEventSink.java:87)
at io.debezium.connector.jdbc.JdbcSinkConnectorTask.put(JdbcSinkConnectorTask.java:94)
at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:584)
at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:334)
at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:235)
at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:204)
at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:201)
at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:256)
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:834)
Caused by: jakarta.persistence.PersistenceException: Converting `org.hibernate.exception.SQLGrammarException` to JPA `PersistenceException` : JDBC exception executing SQL [CREATE TABLE `test_avro_workdb_all_types_table` (`_id` integer NOT NULL, `pt` longtext NULL, `_tinyint1` tinyint(1) NULL, `_boolean` boolean NULL, `_bool` boolean NULL, `_tinyint` tinyint NULL, `_tinyint_unsigned` smallint NULL, `_tinyint_unsigned_zerofill` smallint NULL, `_smallint` smallint NULL, `_smallint_unsigned` integer NULL, `_smallint_unsigned_zerofill` integer NULL, `_mediumint` mediumint NULL, `_mediumint_unsigned` integer NULL, `_mediumint_unsigned_zerofill` integer NULL, `_int` integer NULL, `_int_unsigned` bigint NULL, `_int_unsigned_zerofill` bigint NULL, `_bigint` bigint NULL, `_bigint_unsigned` bigint NULL, `_bigint_unsigned_zerofill` bigint NULL, `_serial` bigint NOT NULL, `_float` float(23) NULL, `_float_unsigned` float(23) NULL, `_float_unsigned_zerofill` float(23) NULL, `_real` float(23) NULL, `_real_unsigned` float(23) NULL, `_real_unsigned_zerofill` float(23) NULL, `_double` double precision NULL, `_double_unsigned` double precision NULL, `_double_unsigned_zerofill` double precision NULL, `_double_precision` double precision NULL, `_double_precision_unsigned` double precision NULL, `_double_precision_unsigned_zerofill` double precision NULL, `_numeric` longtext NULL, `_numeric_unsigned` longtext NULL, `_numeric_unsigned_zerofill` longtext NULL, `_fixed` longtext NULL, `_fixed_unsigned` longtext NULL, `_fixed_unsigned_zerofill` longtext NULL, `_decimal` longtext NULL, `_decimal_unsigned` longtext NULL, `_decimal_unsigned_zerofill` longtext NULL, `_date` date NULL, `_datetime` datetime(6) NULL, `_datetime3` datetime(3) NULL, `_datetime6` datetime(6) NULL, `_datetime_p` datetime(6) NULL, `_datetime_p2` datetime(2) NULL, `_timestamp` timestamp(6) NULL, `_timestamp0` timestamp(6) NULL, `_char` char(10) NULL, `_varchar` varchar(20) NULL, `_tinytext` longtext NULL, `_text` longtext NULL, `_mediumtext` longtext NULL, `_longtext` longtext NULL, `_bin` varbinary(10) NULL, `_varbin` varbinary(20) NULL, `_tinyblob` tinyblob NULL, `_blob` blob NULL, `_mediumblob` mediumblob NULL, `_longblob` longblob NULL, `_json` json NULL, `_enum` enum('value1','value2','value3') NULL, `_year` year(4) NULL, `_time` time NULL, `_point` point NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_geometry` geometry NULL, `_set` set('a','b','c','d') NULL, PRIMARY KEY(`_id`))]
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:165)
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:175)
at org.hibernate.query.spi.AbstractQuery.executeUpdate(AbstractQuery.java:654)
at io.debezium.connector.jdbc.JdbcChangeEventSink.createTable(JdbcChangeEventSink.java:161)
at io.debezium.connector.jdbc.JdbcChangeEventSink.checkAndApplyTableChangesIfNeeded(JdbcChangeEventSink.java:114)
at io.debezium.connector.jdbc.JdbcChangeEventSink.execute(JdbcChangeEventSink.java:83)
... 12 more
{code}

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

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

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

(You might be asked later to provide [DEBUG/TRACE|https://debezium.io/documentation/reference/stable/operations/logging.html] level log)

h2. How to reproduce the issue using our [tutorial|https://github.com/debezium/debezium-examples/tree/main/tutorial] deployment?

h1. Feature request or enhancement

For feature requests or enhancements, provide this information, please:
h2. Which use case/requirement will be addressed by the proposed feature?

h2. Implementation ideas (optional)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.