Outbox Spring Extension

10 views
Skip to first unread message

Jan Baudisch

unread,
Mar 23, 2023, 6:02:22 AM3/23/23
to debezium
Hello,

for Quarkus, there is this convenient Outbox Quarkus Extension
Has anybody already implemented something like that for Spring?

Regards,
Jan



Chris Cranford

unread,
Mar 23, 2023, 1:44:14 PM3/23/23
to debe...@googlegroups.com
Hi Jan,

I'm not aware of one but I may have missed it if someone has.

Chris
--
You received this message because you are subscribed to the Google Groups "debezium" group.
To unsubscribe from this group and stop receiving emails from it, send an email to debezium+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/debezium/e5e7cf30-994e-497a-aab3-0767543fe640n%40googlegroups.com.

Gunnar Morling

unread,
Mar 23, 2023, 4:08:03 PM3/23/23
to debe...@googlegroups.com
Hey,

I don't think something similar exists for Spring, but it would surely be a great thing to have!

Speaking of the outbox pattern and app-side support for it: for Postgres, it could be an interesting implementation alternative to make use of pg_logical_emit_message(), instead of writing to an outbox table. I've just discussed this approach in this article here: https://www.infoq.com/articles/wonders-of-postgres-logical-decoding-messages/. Both approaches, using a table and writing just to the WAL via logical decoding messages, have their pros and cons. What I like about the latter approach is that it a) avoids the need for house-keeping and b) outbox events cannot accidentally be updated (which they never should, they are immutable by definition). Throwing it out here, curious to see what others think.

Best,

--Gunnar


Chris Cranford

unread,
Mar 24, 2023, 1:10:57 AM3/24/23
to debe...@googlegroups.com
Hi Gunnar -

I definitely think that would be a great addition, although I do wonder how much of the existing configuration would just be "bloat" for such an implementation.  A great deal of our existing configuration of the extension focuses on column mapping details and using the pg_logical_emit_message() function completely removes that entirely.  It makes me wonder whether it would make sense to try and introduce such an implementation as another extension much like we did for the reactive outbox extension artifact.  Thoughts?

Chris

Jan Baudisch

unread,
Mar 24, 2023, 4:27:56 AM3/24/23
to debezium
Hi Gunnar and Chris,

thank you for the Feedback!

Jan
Reply all
Reply to author
Forward
0 new messages