Re: Consistently use macro HeapTupleIsValid to check the validity of tuples in tablecmds.c

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Heikki Linnakangas <hlinnaka@iki.fi>, Tender Wang <tndrwang@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-04-10T12:25:24Z
Lists: pgsql-hackers
On 09.04.25 14:26, Heikki Linnakangas wrote:
> It's a matter of taste, but personally I find 'if (tuple != NULL)' more 
> clear than 'if (HeapTupleIsValid(tuple))'. The presence of a macro 
> suggests that there might be other kinds of invalid tuples than a NULL 
> pointer, which just adds mental load.

agreed

> Inconsistency is not good either though. I'm not sure it's worth the 
> churn, but I could get on board a patch to actually replace all 
> HeapTupleIsValid(tuple) calls with plain "tuple != NULL" checks. Keep 
> HeapTupleIsValid() just for compatibility, with a comment to discourage 
> using it.

I'd be in favor of that.




Commits

  1. Remove PointerIsValid()