| From: | Triveni N <triveni(dot)n(at)enterprisedb(dot)com> |
|---|---|
| To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Cc: | Suraj Kharage <suraj(dot)kharage(at)enterprisedb(dot)com>, alvherre(at)kurilemu(dot)de, "andrew(at)dunslane(dot)net" <andrew(at)dunslane(dot)net>, david(dot)g(dot)johnston(at)gmail(dot)com, Ajay Pal <ajay(dot)pal(dot)k(at)gmail(dot)com> |
| Subject: | Fwd: [PATCH] Add support for INSERT ... SET syntax |
| Date: | 2026-06-19 13:35:03 |
| Message-ID: | CAJrT2Tt32+hTEECzSmMV+fp0Xw8U=cXoQO-yCK27R35kLx6RbQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
From: Suraj Kharage <suraj(dot)kharage(at)enterprisedb(dot)com>
Date: Mon, Apr 6, 2026 at 4:13 PM
Subject: Re: [PATCH] Add support for INSERT ... SET syntax
To: Ajay Pal <ajay(dot)pal(dot)k(at)gmail(dot)com>
Cc: Álvaro Herrera <alvherre(at)kurilemu(dot)de>, Andrew Dunstan <
andrew(at)dunslane(dot)net>, David G. Johnston <david(dot)g(dot)johnston(at)gmail(dot)com>,
PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Hi,
Rebased the patch with some documentation changes.
Also, added commitfest entry - https://commitfest.postgresql.org/patch/6635/
--
Thanks & Regards,
Suraj kharage,
enterprisedb.com <https://www.enterprisedb.com/>
Hi,
Sharing an update on testing.
Below are the areas that I’ve covered:
**Core syntax**
- Basic SET syntax (single row, with and without parentheses)
- Column order independence
- Multi-row insertion — SET (col=val, ...), (col=val, ...) syntax
**Value types**
- DEFAULT keyword and implicit defaults (column omission)
- Expressions, functions, and subqueries (including deeply nested)
- NULL values, array columns, composite types, and domain types
**Clauses & advanced features**
- RETURNING clause (single and multi-row)
- ON CONFLICT DO NOTHING / DO UPDATE
- OVERRIDING SYSTEM VALUE
- CTE (WITH clause)
- EXPLAIN / EXPLAIN ANALYZE
**Schema & constraints**
- CHECK constraints and column-level privileges
- Foreign key constraints (valid and failing cases)
- Partitioned tables, table inheritance, and schema-qualified table names
- Quoted and reserved keyword column names
**Procedural contexts**
- PL/pgSQL functions and DO blocks (including multi-row)
- Dynamic SQL via EXECUTE with parameters
- Prepared statements (PREPARE + EXECUTE)
- SAVEPOINTs and rollback behavior
**Other**
- Updatable views
- BEFORE and AFTER INSERT triggers
- Negative cases covering syntax errors, constraint violations, and
privilege violations
Note: Issue reported by Ajay Pal has been resolved in v3 patch.
--
Warm regards,
Triveni
| Attachment | Content-Type | Size |
|---|---|---|
| v3-0001-Add-support-for-INSERT-.-SET-syntax.patch | application/x-patch | 35.6 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bertrand Drouvot | 2026-06-19 13:36:45 | Re: Avoid orphaned objects dependencies, take 3 |
| Previous Message | Bertrand Drouvot | 2026-06-19 13:28:21 | Re: Avoid orphaned objects dependencies, take 3 |