Re: Restore support for USE_ASSERT_CHECKING in extensions only

From: David Rowley <dgrowleyml(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrew Kane <andrew(at)ankane(dot)org>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Restore support for USE_ASSERT_CHECKING in extensions only
Date: 2025-01-10 23:40:46
Message-ID: CAApHDvr-ZNkuiTpeKFNRcd_VmcRSYhUb96jT-1=Jo6kEZd2Ucg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, 11 Jan 2025 at 12:32, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> David Rowley <dgrowleyml(at)gmail(dot)com> writes:
> > hmm, I didn't think of that scenario. I think since
> > verify_compact_attribute() does nothing when USE_ASSERT_CHECKING isn't
> > defined that we might as well define a ((void) 0) macro to avoid the
> > undefined symbol error. That'll avoid the useless call in your debug
> > builds.
>
> No, this completely fails to address the problem. The concern is
> that the extension has been compiled under USE_ASSERT_CHECKING,
> so it will try to call the function. If the function's not there
> in core, kaboom.

hmm, you got me confused. Maybe you missed that the extension will be
the one compiling the static inline TupleDescCompactAttr() function
and will use the macro instead?

I'm not grasping why this does not solve the problem.

David

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2025-01-10 23:48:08 Re: Restore support for USE_ASSERT_CHECKING in extensions only
Previous Message Tom Lane 2025-01-10 23:32:03 Re: Restore support for USE_ASSERT_CHECKING in extensions only