Re: missing PG_FREE_IF_COPY in textlike() and textnlike() ?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: CK Tan <cktan(at)vitessedata(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: missing PG_FREE_IF_COPY in textlike() and textnlike() ?
Date: 2022-09-16 07:03:21
Message-ID: 3588946.1663311801@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

CK Tan <cktan(at)vitessedata(dot)com> writes:
> I see in the texteq() function calls to DatumGetTextPP() are followed
> by conditional calls to PG_FREE_IF_COPY. e.g.

That's because texteq() is potentially usable as a btree index
function, and btree isn't too forgiving about leaks.

> However, in textlike(), PG_FREE_IF_COPY calls are missing.
> https://github.com/postgres/postgres/blob/master/src/backend/utils/adt/like.c#L283

textlike() isn't a member of any btree opclass.

> Is this a memory leak bug?

Not unless you can demonstrate a case where it causes problems.
For the most part, such functions run in short-lived contexts.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Zhang Mingli 2022-09-16 07:16:41 Re: Remove dead macro exec_subplan_get_plan
Previous Message Amit Kapila 2022-09-16 06:59:52 Re: A question about wording in messages