Re: Refactoring SysCacheGetAttr to know when attr cannot be NULL
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Daniel Gustafsson <daniel@yesql.se>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-03-02T14:24:09Z
Lists: pgsql-hackers
Daniel Gustafsson <daniel@yesql.se> writes: >> On 1 Mar 2023, at 00:20, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> Also ... at least in assert-enabled builds, maybe we could check that >> the column being fetched this way is actually marked attnotnull? > We could, but that would limit the API to attnotnull columns, rather than when > the caller knows that the attr cannot be NULL either due to attnotnull or due > to intrinsic knowledge based on what is being extracted. > An example of the latter is build_function_result_tupdesc_t() which knows that > proallargtypes cannot be NULL when calling SysCacheGetAttr. OK, if there are counterexamples then never mind that. I don't think we want to discourage call sites from using this function. regards, tom lane
Commits
-
Add SysCacheGetAttrNotNull for guaranteed not-null attrs
- d435f15fff3c 16.0 landed