Skip to content

[FLINK-38514][postgres] Add support for UUID array type in PostgreSQL CDC connector#4255

Open
Hisoka-X wants to merge 3 commits intoapache:masterfrom
Hisoka-X:FLINK-38514-uuid-array
Open

[FLINK-38514][postgres] Add support for UUID array type in PostgreSQL CDC connector#4255
Hisoka-X wants to merge 3 commits intoapache:masterfrom
Hisoka-X:FLINK-38514-uuid-array

Conversation

@Hisoka-X
Copy link
Member

@Hisoka-X Hisoka-X commented Feb 2, 2026

This close https://issues.apache.org/jira/browse/FLINK-38514

This pull request adds support for mapping PostgreSQL UUID[] array types to Flink's ARRAY<STRING> type in both the source and pipeline connectors. It updates type mapping logic, tests, and documentation to ensure that UUID[] columns are correctly handled and tested throughout the codebase.

@github-actions github-actions bot added docs Improvements or additions to documentation postgres-cdc-connector postgres-pipeline-connector labels Feb 2, 2026
@Hisoka-X Hisoka-X force-pushed the FLINK-38514-uuid-array branch from 43bbaa9 to 46ea72b Compare February 2, 2026 09:29
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds support for PostgreSQL UUID[] (UUID array) type mapping to Flink's ARRAY type in the CDC connectors. The changes enable proper capture and deserialization of UUID array columns from PostgreSQL databases in both snapshot and incremental (WAL) replication modes.

Changes:

  • Added UUID[] to STRING array type mapping in both source and pipeline PostgreSQL CDC connectors
  • Implemented array deserialization converter for PostgreSQL with support for nested element conversion
  • Added comprehensive test coverage for UUID arrays in both connector types
  • Updated documentation to reflect UUID type support (scalar type only)

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
flink-connector-postgres-cdc/src/test/resources/ddl/column_type_test.sql Added array_types table with uuid_a1 column for testing UUID[] type
PostgreSQLConnectorITCase.java Added testArrayTypes test method to verify UUID array handling in snapshot and WAL modes
PostgreSQLDeserializationConverterFactory.java Implemented createArrayConverter method to handle array deserialization with recursive element conversion
flink-connector-postgres-cdc/.../PostgresTypeUtils.java Added PG_UUID_ARRAY constant and case mapping to ARRAY
RowDataDebeziumDeserializeSchema.java Changed createConverter method visibility from private to public to support array element conversion
flink-cdc-pipeline-connector-postgres/src/test/resources/ddl/column_type_test.sql Updated array_types table to include uuid_a1 column
PostgresFullTypesITCase.java Added assertions to verify UUID array values in testArrayTypes method
flink-cdc-pipeline-connector-postgres/.../PostgresTypeUtils.java Added PgOid.UUID_ARRAY case mapping to ARRAY
docs/content/docs/connectors/flink-sources/postgres-cdc.md Added UUID to the list of PostgreSQL types that map to Flink STRING type
docs/content.zh/docs/connectors/flink-sources/postgres-cdc.md Added UUID to the list of PostgreSQL types that map to Flink STRING type (Chinese version)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant