Re: Re[2]: Async_Notify
От | Pavel Stehule |
---|---|
Тема | Re: Re[2]: Async_Notify |
Дата | |
Msg-id | CAFj8pRCVXrbgwvxZgK8_rXLHxU2_xVGHeujQAwB07fR7xsKTCA@mail.gmail.com обсуждение исходный текст |
Ответ на | Async_Notify (Арсен Арутюнян <arutar@bk.ru>) |
Список | pgsql-hackers |
pá 13. 12. 2019 v 12:30 odesílatel Арсен Арутюнян <arutar@bk.ru> napsal:
I'm trying to send a notification from the PG extension directly.It turns out the mechanism that is used in the async file. (Async_Notify) does not suit me since the function uses oldcontext = MemoryContextSwitchTo (CurTransactionContext); and MemoryContextSwitchTo (oldcontext);
And I did not find the ability to add notification except the Async_Notify function.Now only SPI_execute works ("NOTIFY chanel,’message’", false, 0);P.S. In my extension, there is already a higher function started with oldcontext = MemoryContextSwitchTo (CurTransactionContext); and MemoryContextSwitchTo (oldcontext);
NOTIFY just push message to queue and waiting on end of transaction.
This is by design and you cannot to change it.
Regards
Pavel
Пятница, 13 декабря 2019, 12:19 +03:00 от Pavel Stehule <pavel.stehule@gmail.com>:
Hipá 13. 12. 2019 v 10:00 odesílatel Арсен Арутюнян <arutar@bk.ru> napsal:Hello! I wrote my extension for PG and am trying to run Async_Notify from it. But messages come very late! Sometimes only after I execute the notify command from the shell. What am I doing wrong? How to use Async_Notify correctly.I am not sure what mechanism do you use.Notify messages are send after successful end of transaction.RegardsPavel--
Арсен Арутюнян--
Арсен Арутюнян
В списке pgsql-hackers по дате отправления: