Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql
От | Ben Chobot |
---|---|
Тема | Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql |
Дата | |
Msg-id | 34F8B14B-ABA4-45A3-92CE-2E1B755398EF@silentmedia.com обсуждение исходный текст |
Ответ на | Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when called from inside pl/pgsql (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql
|
Список | pgsql-bugs |
> On Oct 6, 2017, at 4:21 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > I wrote: >> I thought of a better way, as attached. > > Pushed. Ben, could you confirm that the committed patch fixes your > original use-case? The 9.5 version of the patch is at > > https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=13d2ed921035f2d88adf87d796373e920bdd56ee Not quickly, to be honest. But the test case is not hard. If you can do this without crashing, I'm convinced you've fixedthe problem as I've seen it: SELECT * FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding'); CREATE TABLE public.foo(i int); insert into public.foo(i) values(1); CREATE OR REPLACE FUNCTION logical_replication_slot_lsn_delta(slot text) RETURNS pg_lsn AS $$BEGIN return location from pg_logical_slot_peek_changes(slot,null,1) limit 1;END $$ language plpgsql; select logical_replication_slot_lsn_delta('regression_slot'); Thanks for the fast response, and for the amazing code that is Postgres! -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs
В списке pgsql-bugs по дате отправления: