Re: BUG #18879: PostgreSQL returns memory error.

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: luy70@psu.edu
Cc: pgsql-bugs@lists.postgresql.org
Date: 2025-04-04T21:32:13Z
Lists: pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> CREATE LOCAL TEMP TABLE IF NOT EXISTS v878825600 ( c878825601 INT
> COMPRESSION DEFAULT CONSTRAINT cons_878825602 REFERENCES v878825600 MATCH
> SIMPLE ON UPDATE NO ACTION ON DELETE SET DEFAULT ( c878825601, c878825601,
> c878825601, c878825601, c878825601, c878825601, c878825601 ) PRIMARY KEY )
> ON COMMIT DELETE ROWS;

Thanks for the report.  A less illegible repro is

regression=# create temp table v1 (c1 int primary key references v1 on delete set default (c1,c1));
WARNING:  problem in alloc set PortalContext: detected write past chunk end in block 0x2c25bc0, chunk 0x2c25e20
WARNING:  problem in alloc set PortalContext: detected write past chunk end in block 0x2c25bc0, chunk 0x2c25e20
CREATE TABLE

(With more repetitions of "c1" you can get a crash.)  It looks like
we're not being careful to reject duplicates in the SET DEFAULT list.

			regards, tom lane



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Repair misbehavior with duplicate entries in FK SET column lists.