Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql
Дата
Msg-id 20171007042908.edlsalmkm2ksac4y@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql  (Ben Chobot <bench@silentmedia.com>)
Список pgsql-bugs
On 2017-10-06 21:24:34 -0700, Ben Chobot wrote:
> 
> > 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');

Yep, that one's definitely fixed now.

Greetings,

Andres Freund


-- 
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 по дате отправления:

Предыдущее
От: Ben Chobot
Дата:
Сообщение: Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql
Следующее
От: Andres Freund
Дата:
Сообщение: Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql