Re: POC: Cleaning up orphaned files using undo logs

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Dmitry Dolgov <9erthalion6(at)gmail(dot)com>, Kuntal Ghosh <kuntalghosh(dot)2007(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: POC: Cleaning up orphaned files using undo logs
Date: 2019-07-10 06:32:18
Message-ID: CAA4eK1+3_BPYaqxcs83wVMtzr39k+ypy3QKZjK2AeTAACzWMag@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, Jul 6, 2019 at 1:47 AM Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>
> In fact, it seems to me that we shouldn't have any such thing as
> "queue entries" at all. The queues should just be pointing to
> RollbackHashEntry *, and we should add all the fields there that are
> present in any of the "queue entry" structures. This would use less
> memory still.
>

As of now, after we finish executing the rollback actions, the entry
from the hash table is removed. Now, at a later time (when queues are
full and we want to insert a new entry) when we access the queue entry
(to check whether we can remove it) corresponding to the removed hash
table entry, will it be safe to access it? The hash table entry might
have been freed or would have been reused as some other entry by the
time we try to access it.

--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fabien COELHO 2019-07-10 06:32:56 Re: pgbench - add \aset to store results of a combined query
Previous Message David Fetter 2019-07-10 06:24:00 Re: range_agg