Re: Removing pgsql_tmp files

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Michael Glaesemann <michael(dot)glaesemann(at)myyearbook(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Removing pgsql_tmp files
Date: 2010-11-09 01:56:38
Message-ID: 1289267707-sup-5839@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Excerpts from Tom Lane's message of lun nov 08 22:29:28 -0300 2010:

> Hmm. If you look at FileClose() in fd.c, you'll discover that that
> "temporary file" log message is emitted immediately before unlink'ing
> the file. It looks pretty safe ... but, scratching around, I notice
> that there's a CHECK_FOR_INTERRUPTS at the end of ereport(). So a
> cancel that was caught by that exact CHECK_FOR_INTERRUPTS call could
> provoke this symptom. The window for this is larger than it might seem
> since the CHECK_FOR_INTERRUPTS could be responding to an interrupt that
> came in sometime before that.
>
> I think we need to re-order the operations there to ensure that the
> unlink will still happen if the ereport gets interrupted.

Would it work to put the removal inside a PG_CATCH block?

--
Álvaro Herrera <alvherre(at)commandprompt(dot)com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Dave Page 2010-11-09 02:21:17 Re: One-click Installers for 9.1 Alpha 2 (ETA)
Previous Message Carlos Henrique Reimer 2010-11-09 01:31:02 Re: Linux x Windows LOCALE/ENCODING compatibility

Browse pgsql-hackers by date

  From Date Subject
Next Message Itagaki Takahiro 2010-11-09 02:27:26 Re: Complier warnings on mingw gcc 4.5.0
Previous Message Tom Lane 2010-11-09 01:29:28 Re: Removing pgsql_tmp files