Re: SQL:2011 Application Time Update & Delete
Paul A Jungwirth <pj@illuminatedcomputing.com>
From: Paul A Jungwirth <pj@illuminatedcomputing.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Robert Haas <robertmhaas@gmail.com>, Peter Eisentraut <peter@eisentraut.org>
Date: 2025-10-24T17:08:26Z
Lists: pgsql-hackers
Attachments
- v57-0002-Document-temporal-foreign-keys.patch (text/x-patch) patch v57-0002
- v57-0005-Add-range_minus_multi-and-multirange_minus_multi.patch (text/x-patch) patch v57-0005
- v57-0004-Document-temporal-update-delete.patch (text/x-patch) patch v57-0004
- v57-0001-Add-docs-chapter-for-temporal-tables.patch (text/x-patch) patch v57-0001
- v57-0003-Document-temporal-PERIODs.patch (text/x-patch) patch v57-0003
- v57-0009-Add-CASCADE-SET-NULL-SET-DEFAULT-for-temporal-fo.patch (text/x-patch) patch v57-0009
- v57-0008-Look-up-more-temporal-foreign-key-helper-procs.patch (text/x-patch) patch v57-0008
- v57-0006-Add-UPDATE-DELETE-FOR-PORTION-OF.patch (text/x-patch) patch v57-0006
- v57-0010-Expose-FOR-PORTION-OF-to-plpgsql-triggers.patch (text/x-patch) patch v57-0010
- v57-0011-Add-PERIODs.patch (text/x-patch) patch v57-0011
- v57-0007-Add-tg_temporal-to-TriggerData.patch (text/x-patch) patch v57-0007
On Sun, Oct 12, 2025 at 11:43 PM Paul A Jungwirth
<pj@illuminatedcomputing.com> wrote:
> > > Here is another update, now with working PERIOD DDL. I also fixed some
> > > new post-rebase problems causing CI to fail.
> >
> > More rebase & CI fixes attached.
> >
> > Rebased to 03d40e4b52 now.
>
> It looks like an #include I needed went away and my patches stopped
> compiling. Here is a new series.
Another update attached. The last CI run failed, but it seems to be a
problem with the cfbot. It had several green runs before that, and
everything still passes here. The error is:
Failed to start: INVALID_ARGUMENT: Operation with name
"operation-1761179023113-641c8720efc82-b98ffe61-7c88ff25" failed with
status = HttpJsonStatusCode{statusCode=PERMISSION_DENIED} and message
= FORBIDDEN
These new patches have some cleanup to the docs: whitespace, a bit of
clarification between application-time vs system-period PERIODs, and
removing the "periods are not supported" line in the final patch that
adds PERIODs.
The first 3 doc patches all apply to features that we released in v18,
so it would be nice to get those reviewed/merged soon if possible.
Patches 4-6 are another group, adding UPDATE/DELETE FOR PORTION OF.
That is the next step in SQL:2011 support. I think it is hard to use
temporal primary & foreign keys without temporal DML.
After that the patches are nice-to-have (especially foreign key
CASCADE), but less important IMO.
Also I apologize that those last attachments were out of order.
Hopefully it was user error so I can do something about it: I recently
switched from Thunderbird back to the Gmail web client. As I write
this email, Gmail is telling me the v57 files are in the right order,
so hopefully they stay that way after I send it.
Rebased to c0677d8b2e.
Yours,
--
Paul ~{:-)
pj@illuminatedcomputing.com
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Make ExecForPortionOfLeftovers() obey SRF protocol.
- 207cb2abcba0 19 (unreleased) landed
-
Add isolation tests for UPDATE/DELETE FOR PORTION OF
- b6ccd30d8ff6 19 (unreleased) landed
-
Add UPDATE/DELETE FOR PORTION OF
- 8e72d914c528 19 (unreleased) landed
-
Record range constructor functions in pg_range
- c257ba839718 19 (unreleased) landed
-
Add range_minus_multi and multirange_minus_multi functions
- 5eed8ce50ce9 19 (unreleased) landed
-
doc: Add section for temporal tables
- e4d8a2af07f5 19 (unreleased) landed
-
Add assertion check for WAL receiver state during stream-archive transition
- 65f4976189b6 19 (unreleased) cited