On 2013-01-24 20:53:18 +0200, Heikki Linnakangas wrote:
> That said (hah, you knew there would be a "but" ;-)), now that I see what
> that looks like, I'm feeling that maybe it wasn't such a good idea after
> all. It sounded like a fairly small patch that greatly reduces the overhead
> in the master with existing replication systems like slony, but it turned
> out to be a huge patch with a lot of new concepts and interfaces.
Heh, I know the feeling that there must be a simpler way. But after
trying several approaches (more than I dare to admit) I don't really
think there's any that provides the asked for flexibility.
I really think the flexibility is whats required to satisfy the very
diverse aims people have for a feature like this.
And if you look at the overall diffstat, without minor changes, example
code and documentation:
src/backend/access/heap/heapam.c | 286 ++-src/backend/replication/logical/decode.c | 514
++++++src/backend/replication/logical/logical.c | 943 ++++++++++src/backend/replication/logical/logicalfuncs.c
| 115 ++src/backend/replication/logical/reorderbuffer.c | 1947
++++++++++++++++++++src/backend/replication/logical/snapbuild.c | 1596
++++++++++++++++src/backend/replication/walsender.c | 620 ++++++-src/bin/pg_basebackup/pg_receivellog.c
| 869 +++++++++src/include/replication/decode.h | 20 +src/include/replication/logical.h
| 205 +++src/include/replication/logicalfuncs.h | 14
+src/include/replication/output_plugin.h | 73 +src/include/replication/reorderbuffer.h | 296
+++src/include/replication/snapbuild.h | 176 ++src/include/replication/walsender_private.h | 6
+-src/backend/storage/ipc/procarray.c | 63 +-src/backend/utils/time/tqual.c | 272
++-
Its not *that* big compared to other patches that have been committed.
Greetings,
Andres Freund
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services