mattp5657 commented on issue #3582:
URL: https://github.com/apache/iggy/issues/3582#issuecomment-4887997960

   @mmodzelewski 
   
   While digging into `postgres_source` CDC (it's currently fully broken — 
invalid `CREATE PUBLICATION` syntax, plus the slot's created with `pgoutput` 
but read via a function that only accepts text output, so every poll errors), I 
hit a fork in the road on how to actually fix it, and wanted to check before 
opening a PR.
   
   The config already stubs out `cdc_backend = "pg_replicate"` pointing at 
Supabase's ETL framework, but that depends on an unreleased, git-pinned fork of 
`rust-postgres` with no upstream path. This was added in 2025, so I don't want 
to be waiting on it to get CDC working.
   
   Given that, three options:
   1. **Fix the existing `builtin` backend against `test_decoding`** — smallest 
change, but Postgres explicitly documents `test_decoding` as an example plugin 
with no output-format stability guarantee.
   2. **Implement real `pgoutput` over streaming replication ourselves** — the 
production-grade approach, but no mature Rust crate exists for it; this would 
be its own multi-PR effort.
   3. **Wait for a standardized Rust CDC solution to land** — based on what I 
found, I don't think this is realistic; the ecosystem gap has been open since 
2015 with no sign of closing.
   
   Leaning toward (1) now + (2) as tracked follow-up work, but wanted input 
before committing to a direction. Thoughts?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to