On 10/07/2019 02:31, David G. Johnston wrote:
> On Tue, Jul 9, 2019 at 5:23 PM Tom Mercha <merch...@hotmail.com> wrote:
> 
>>
>> I understand that you never wrote any PL handler but was just thinking
>> about this functionality as a follow-up to our conversation. I was just
>> wondering whether anonymous DO blocks *must* return void or not?
>>
>> The docs for DO say it is a function returning void -
>> https://www.postgresql.org/docs/current/sql-do.html
> 
> 
> 
>>
> 
> But the docs for CREATE LANGUAGE's INLINE HANDLER say 'typically return
>> void' - https://www.postgresql.org/docs/current/sql-createlanguage.html
> 
> 
> No, the language cannot override the SQL execution environment's
> limitations.
> 
> "The code block is treated as though it were the body of a function with no
> parameters, returning void. It is parsed and executed a single time."
> 
> The above applies regardless of the language the code block is written in.
> 
> It can, however, affect permanent session state (so, use tables).
> 

Thank you very much for addressing the question.

I am still a bit of a novice with PostgreSQL internals. Could you please 
provide some more detail on your comment regarding affecting permanent 
session state?

> David J.
> 

Reply via email to