On Mon, 10 Feb 2020, 18:59 Tom Lane, <t...@sss.pgh.pa.us> wrote:
> Dmitry Igrishin <dmit...@gmail.com> writes: > > Maybe I'm wrong, but anychar_typmodin() of > > src/backend/utils/adt/varchar.c of PostgreSQL 12.1 does not pfree()s > > the memory allocated by ArrayGetIntegerTypmods(). Probably, I'm > > missing something. Could anybody please clarify on that? > > It is a leak, in the sense that the pointer is unreferenced once the > function returns. But we don't care, either here or in the probably > thousands of other similar cases, because we don't expect this function > to be run in a long-lived memory context. The general philosophy in > the backend is that it's cheaper and far less error-prone to rely on > memory context cleanup to reclaim (small amounts of) memory than to > rely on manual pfree calls. You can read more about that in > src/backend/utils/mmgr/README. > I see. Thank you very much!