Re: switch UNLOGGED to LOGGED

From: Leonardo Francalanci <m_lists(at)yahoo(dot)it>
To: Noah Misch <noah(at)leadboat(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: switch UNLOGGED to LOGGED
Date: 2011-05-19 08:23:53
Message-ID: 75573.12792.qm@web29005.mail.ird.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On Wed, May 18, 2011 at 04:02:59PM +0100, Leonardo Francalanci wrote:
> > > By the time the startup process
> > > releases the AccessExclusiveLock acquired by the proposed
> > > UNLOGGED -> normal conversion process, that relfilenode
> > > needs to be either fully copied or unlinked all over again.
> > > (Alternately, find some other way to make sure queries don't
> > > read the half-copied file.)
> >
> > About this issue: how are AccessExclusiveLocks released on
> > the standby when the master crashes?
>
> I assume those locks remain. It wouldn't be safe to release them; a master
> crash is just one kind of WAL receipt latency.

But somehow when the master restarts the standby gets notified it
has the unlock???

> When you promote the standby, though,
ShutdownRecoveryTransactionEnvironment()
> releases the locks.

Ok; then the problem in the UNLOGGED -> normal conversion is that:

1) the master and the standby acquire a lock on the table
2) the master starts sending the pages to the standby
3) the master crashes before committing

up until here no problems, as the standby still has the lock on the
table.

4) when the master restarts, it removes all the fork for rels with INIT forks;
are those "deletes" sent to the standby? And, if yes,
would those be replayed by the standby *before* releasing the lock?
If the answer is "yes", then I don't think we have a problem... but I think
that at the moment those unlogged-table-forks deletes aren't sent at all.

(When promoting the standby, we could have
ShutdownRecoveryTransactionEnvironment() remove all the fork for rels
with INIT forks before releasing the locks)

Leonardo

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2011-05-19 09:20:20 Re: switch UNLOGGED to LOGGED
Previous Message Sreekanth Polaka 2011-05-19 05:56:54 FW: issue building uuid-ossp on win32 with VS2005