Re: TupleDescAttr bounds checks
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-03-20T17:02:35Z
Lists: pgsql-hackers
On Fri, Mar 20, 2026 at 12:46 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > I did see that, but it read to me that you were just guessing at that > time. This morning I put Asserts into indexcmds.c that verified that > it was trying to access the tupledesc for attno zero, and that proves > there is a bug there. It also seems like a plausible explanation for > why only one machine has exhibited the failure. (Your 0002 is a > better version of said Asserts.) Ah, OK. Yeah, I wasn't completely sure at the time whether there was some kind of TupleDesc out there that would allow zero or negative indexes safely. It seems like there is not. -- Robert Haas EDB: http://www.enterprisedb.com
Commits
-
Avoid unsafe access to negative index in a TupleDesc.
- 681a91d29d4d 17.10 landed
- 40fa04e7c851 14.23 landed
- 3c7a6bbe63e2 16.14 landed
- 11c2c0cc8d7c 18.4 landed
- 07e833e3cff3 15.18 landed
-
Disallow system columns in COPY FROM WHERE conditions.
- 21c69dc73f9d 19 (unreleased) landed
-
Add a test for creating an index on a whole-row expression.
- 4647ee2da37c 19 (unreleased) landed
-
Bounds-check access to TupleDescAttr with an Assert.
- c98ad086ad9b 19 (unreleased) landed
-
Prevent spurious "indexes on virtual generated columns are not supported".
- 570e2fcc041a 19 (unreleased) landed
- cceb9c18a50b 18.4 landed