Re: [HACKERS] proposal: schema variables
Pavel Luzanov <p.luzanov@postgrespro.ru>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Move WAL sequence code into its own file
- a87987cafca6 19 (unreleased) cited
-
Add ExplainState argument to pg_plan_query() and planner().
- c83ac02ec730 19 (unreleased) cited
-
Don't include access/htup_details.h in executor/tuptable.h
- 1a8b5b11e48a 19 (unreleased) cited
-
Refactor to avoid code duplication in transformPLAssignStmt.
- b0fb2c6aa5a4 19 (unreleased) cited
-
Avoid including commands/dbcommands.h in so many places
- 325fc0ab14d1 19 (unreleased) cited
-
Restrict psql meta-commands in plain-text dumps.
- 71ea0d679543 19 (unreleased) cited
-
Split func.sgml into more manageable pieces
- 4e23c9ef65ac 19 (unreleased) cited
-
Fix squashing algorithm for query texts
- 0f65f3eec478 18.0 cited
-
EXPLAIN: Always use two fractional digits for row counts.
- 95dbd827f2ed 18.0 cited
-
Preliminary refactoring of plpgsql expression construction.
- a654af21ae52 18.0 cited
-
plpgsql: pure parser and reentrant scanner
- 7b27f5fd36cb 18.0 cited
-
Add some sanity checks in executor for query ID reporting
- 24f520594809 18.0 cited
-
Fix misleading error message context
- 4af123ad45bd 18.0 cited
-
Add macros for looping through a List without a ListCell.
- 14dd0f27d7cd 17.0 cited
Hi, I plan to make usability and feature test review in several days. Is there any chances that it will work on replicas? Such possibility is very helpful in generating reports. Now, LET command produces an error: ERROR: cannot execute LET in a read-only transaction But if we say that variables are non-transactional ? ----- Pavel Luzanov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company On 08.03.2018 21:00, Pavel Stehule wrote: > Hi > > 2018-02-07 7:34 GMT+01:00 Pavel Stehule <pavel.stehule@gmail.com > <mailto:pavel.stehule@gmail.com>>: > > Hi > > updated patch with your changes in documentation and pg_dump > (initial) support > > Main issue of this patch is storage. We can reuse local buffers > used for temp tables. But it does allocation by 8KB and it creates > temp files for every object. That is too big overhead. Storing > just in session memory is too simple - then there should be lot of > new code used, when variable will be dropped. > > I have ideas how to allow work with mix of scalar and composite > types - so it will be next step of this prototype. > > Regards > > Pavel > > > new update - rebased, + some initial support for composite values on > right side and custom types, arrays are supported too. > > omega=# CREATE VARIABLE xx AS (a int, b numeric); > CREATE VARIABLE > omega=# LET xx = (10, 20)::xx; > LET > omega=# SELECT xx; > +---------+ > | xx | > +---------+ > | (10,20) | > +---------+ > (1 row) > > omega=# SELECT xx.a + xx.b; > +----------+ > | ?column? | > +----------+ > | 30 | > +----------+ > (1 row) > > omega=# \d xx > schema variable "public.xx" > +--------+---------+ > | Column | Type | > +--------+---------+ > | a | integer | > | b | numeric | > +--------+---------+ > > > Regards > > Pavel > >