pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Heikki Linnakangas <heikki.linnakangas@iki.fi>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Split RelationClearRelation into three different functions
Date: Thu, 31 Oct 2024 08:13:25 +0000
Message-ID: <E1t6QJ4-003GUP-2N@gemulon.postgresql.org> (raw)

Split RelationClearRelation into three different functions

The old RelationClearRelation function did different things depending
on the arguments and circumstances. It could:

a) remove the relation completely from relcache (rebuild == false),
b) mark the entry as invalid (rebuild == true, but not in xact), or
c) rebuild the entry (rebuild == true).

Different callers used it for different purposes, and often assumed a
particular behavior, which was confusing. Split it into three
different functions, one for each of the above actions (one of them,
RelationInvalidateRelation, was already added in commit e6cd857726).
Move the responsibility of choosing the action and calling the right
function to the callers.

Reviewed-by: jian he <jian.universality@gmail.com>
Discussion: https://www.postgresql.org/message-id/9c9e8908-7b3e-4ce7-85a8-00c0e165a3d6%40iki.fi

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/2b9b8ebbf8a2f621d1cecc4db759700f9ce6ce66

Modified Files
--------------
src/backend/utils/cache/relcache.c | 305 +++++++++++++++++--------------------
1 file changed, 136 insertions(+), 169 deletions(-)



Message-ID: <E1t6QJ4-003GUP-2N@gemulon.postgresql.org>
Permalink:  ../E1t6QJ4-003GUP-2N@gemulon.postgresql.org/
Also on:    postgresql.org/message-id/E1t6QJ4-003GUP-2N@gemulon.postgresql.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: heikki.linnakangas@iki.fi, pgsql-committers@lists.postgresql.org
  Subject: Re: pgsql: Split RelationClearRelation into three different functions
  In-Reply-To: <E1t6QJ4-003GUP-2N@gemulon.postgresql.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox