Re: Re: proposal: schema variables - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: Re: proposal: schema variables
Date
Msg-id CAFj8pRArtw+Qqzk+Zf2NxjgO=paCBdc54eEma+MsVwtx3j7Atg@mail.gmail.com
Whole thread Raw
In response to Re: Re: proposal: schema variables  (Marcos Pegoraro <marcos@f10.com.br>)
Responses Re: Re: proposal: schema variables
List pgsql-hackers
Hi

po 17. 3. 2025 v 21:53 odesílatel Marcos Pegoraro <marcos@f10.com.br> napsal:
Em seg., 17 de mar. de 2025 às 15:33, Pavel Stehule <pavel.stehule@gmail.com> escreveu:
I was asked for sending a reduced patchset

Would be good to explain what this reduced patchset is.
Complete patch contains this and that
Reduced patch contains only this.

Reduced patch contains:

* possibility to create and drop session variables (support for catalog pg_variable and related operations)
* possibility to set the session variable (command LET) and possibility to use session variable in the query
* access right support
* support for DISCARD command
* memory cleaning at transaction end when the variable is dropped
* warning when variable is shadowed by column
* introduction of variable's fences - syntax VARIABLE(varname)

Complete patch contains plus

* LET can be described by EXPLAIN
* LET can be prepared statement
* temporary session variables
* RESET at transaction end
* implementation of DEFAULT value for the variable
* implementation IMMUTABLE and NOT NULL clauses for the variable
* variable can be used as an argument of CALL statement (and doesn't block simple evaluation in plpgsql)
* used variable doesn't block with parallel execution
* LET from plpgsql can use simple expression evaluation (performance optimization for PL/pgSQL)
* variables doesn't block inlining SQL functions
* fix message "column doesn't exist" to "column or variable doesn't exist"
* support for transactional variables (content can be transactional)
* possibility to specify the name of restored variable for pg_restore

Regards

Pavel



 

Regards
Marcos

pgsql-hackers by date:

Previous
From: Fujii Masao
Date:
Subject: Re: pg_recvlogical requires -d but not described on the documentation
Next
From: Alena Rybakina
Date:
Subject: Re: Vacuum statistics