]> granicus.if.org Git - postgresql/commit
Fix logical replication slot initialization
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 1 Aug 2018 21:39:07 +0000 (17:39 -0400)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 1 Aug 2018 21:39:07 +0000 (17:39 -0400)
commit7326a7d63801673d3569def65cb7955d6486f254
treefe6dac63865119743112e0af81c12fc2e487d2a3
parent34295b87fbbcbaf26280f53f006b20971dbad1f3
Fix logical replication slot initialization

This was broken in commit 9c7d06d60680, which inadvertently gave the
wrong value to fast_forward in one StartupDecodingContext call.  Fix by
flipping the value.  Add a test for the obvious error, namely trying to
initialize a replication slot with an nonexistent output plugin.

While at it, move the CreateDecodingContext call earlier, so that any
errors are reported before sending the CopyBoth message.

Author: Dave Cramer <davecramer@gmail.com>
Reviewed-by: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/CADK3HHLVkeRe1v4P02-5hj55H3_yJg3AEtpXyEY5T3wuzO2jSg@mail.gmail.com
contrib/test_decoding/expected/slot.out
contrib/test_decoding/sql/slot.sql
src/backend/replication/logical/logical.c
src/backend/replication/walsender.c