From: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> |
---|---|
To: | Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Always truncate segments before unlink |
Date: | 2010-07-16 08:34:25 |
Message-ID: | AANLkTinoP4QIwN8Ij_lFtqCpp5P_q8sj4eefQcVYmYz8@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Jul 6, 2010 at 9:59 AM, Takahiro Itagaki
<itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> wrote:
>
> Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Truncating seems like an ugly kluge that's not fixing the real problem.
>> Why are there open descriptors for a dropped relation? They should all
>> get closed as a consequence of relcache flush.
>
> Relcache will be flushed at the next command, but there could be some
> *idle backends* kept by connection pooling. They won't close dropped files
> until shared cache invalidation queue are almost filled, that might take
> long time.
Right. Since many connection poolers use LIFO method to manage the pooled
connections, this problem is very likely to happen.
> There might be another solution that we send PROCSIG_CATCHUP_INTERRUPT
> signal not only on the threshold of queue length but also on timeout,
> where the signal is sent when we have some old messages in the queue
> longer than 30sec - 1min.
REINDEX or something should not send PROCSIG_CATCHUP_INTERRUPT immediately?
Regards,
--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center
From | Date | Subject | |
---|---|---|---|
Next Message | Boxuan Zhai | 2010-07-16 09:26:37 | Re: gSoC - ADD MERGE COMMAND - code patch submission |
Previous Message | Fujii Masao | 2010-07-16 08:13:53 | Re: Streaming Replication: Checkpoint_segment and wal_keep_segments on standby |