From a8fa840ed52e15c4e8ca3a3d52e3a7034f72c27e Mon Sep 17 00:00:00 2001 From: Vaidotas Valuckas Date: Wed, 1 Nov 2023 14:28:50 +0200 Subject: [PATCH] Start the README --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index e69de29..64badfd 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,27 @@ +# postgres-cdc + +[![Actions Status](https://github.com/rieske/postgres-cdc/workflows/master/badge.svg)](https://github.com/rieske/postgres-cdc/actions) + +Java library that utilizes [PostgreSQL logical replication](https://www.postgresql.org/docs/current/logical-replication.html) +feature to implement [Change Data Capture](https://en.wikipedia.org/wiki/Change_data_capture). + +Once logical replication is configured on the PostgreSQL server, this library can subscribe to changes +in the specified tables. +The change events are streamed in real time and can be relayed to message brokers +as they occur, allowing to implement the [Transactional Outbox](https://microservices.io/patterns/data/transactional-outbox.html) +pattern. + +## Prerequisites + +PostgreSQL version 13.12 or later. +Note 13.12 is the earliest one that this library is tested against at the time of writing. +In theory, it may work with PostgreSQL 9.5 and above. + +Logical replication must be [configured](https://www.postgresql.org/docs/current/logical-replication-config.html#LOGICAL-REPLICATION-CONFIG-PUBLISHER) +on the PostgreSQL server. + +If you are using AWS Aurora, see [here](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Replication.Logical.html#AuroraPostgreSQL.Replication.Logical.Configure) +for instructions to enable logical replication. + +## Usage +