Re: [PATCH][DOC] Fix for PREPARE TRANSACTION doc and postgres_fdwmessage.
От | Gilles Darold |
---|---|
Тема | Re: [PATCH][DOC] Fix for PREPARE TRANSACTION doc and postgres_fdwmessage. |
Дата | |
Msg-id | b68d3c15-4d1e-d911-2236-8b714444fda6@darold.net обсуждение исходный текст |
Ответ на | Re: [PATCH][DOC] Fix for PREPARE TRANSACTION doc and postgres_fdwmessage. (Michael Paquier <michael@paquier.xyz>) |
Ответы |
Re: [PATCH][DOC] Fix for PREPARE TRANSACTION doc and postgres_fdwmessage.
|
Список | pgsql-hackers |
Le 09/11/2019 à 02:22, Michael Paquier a écrit :
On Fri, Nov 08, 2019 at 10:19:01AM +0100, Gilles Darold wrote:I don't think so. The support or not of 2PC is on foreign data wrapper side. In postgres_fdw contrib the error for use with 2PC is not part of the test but it will be thrown anyway. I guess that a test will be valuable only if there is support for readonly query.That's what I call a case for negative testing. We don't allow 2PC to be used so there is a point in having a test to make sure of that. This way, if the code in this area is refactored or changed, we still make sure that 2PC is correctly prevented. My suggestion is to close this gap. One point here is that this requires an alternate output file because of max_prepared_transactions and there is no point in creating one with all the tests of postgres_fdw in a single file as we have now as it would create 8k lines of expected file bloat, so it would be better to split the tests first. My 2c. -- Michael
Hi Michael, it looks that a separate test is not required at least for this test. Here is a patch that enable the test in contrib/postgres_fdw/, expected output:
-- Make sure that 2PC is correctly prevented
BEGIN;
SELECT count(*) FROM ft1;
count
-------
822
(1 row)
-- Must throw an error
PREPARE TRANSACTION 'fdw_tpc';
ERROR: cannot PREPARE a transaction that has operated on postgres_fdw foreign tables
ROLLBACK;
WARNING: there is no transaction in progress
-- Gilles Darold http://www.darold.net/
Вложения
В списке pgsql-hackers по дате отправления: