debezium / debezium/dbz

Support database.url for PostgreSQLConnector [DBZ-5771]

Open
#709 0 comments 0 reactions 0 assignees View on GitHub
component/postgresql-connector migrated-from-jira type/enhancement
Dominant language
HTML
Stars
6
Forks
8
Avg merge
2d 19h
Merged PRs (30d)
1

Description

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

h2. What Debezium connector do you use and what version?

PostgreSQL Connector 2.0
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?

I am trying to start an embedded Debezium Engine in my Spring Boot application. I configure Spring Boot by giving it a property which contains the URL, ie. 
{{dbc:postgresql://127.0.0.1:5435/mydatabase}}. To start Debezium I need to split that URL to get to the properties I need ({{{}database.hostname{}}}, {{{}database.port{}}}, {{{}database.dbname{}}}).

It would be easier to just pass the URL to Debezium instead of the parts. 
h2. Implementation ideas (optional)

I see {{io.debezium.connector.postgresql.connection.PostgresConnection}} uses a pattern based factory to create the jdbc url from the given properties. It should be possible to use a patternfactory or urlfactory based on the given properties. Use the url if given, otherwise use the other properties to create the url based on the pattern.

Contributor guide

Open the contributing guide

Research direction

Start with io.debezium.connector.postgresql.connection.PostgresConnection and trace how database.hostname, database.port, and database.dbname are used to create the JDBC URL. Done means the PostgreSQL Connector accepts database.url while retaining the existing property-based URL construction when database.url is absent.

Written by the indexing model from the issue text.

Assessment

Tech stack
postgresql, spring-boot
Domain
databases
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.