Re: BUG #4879: bgwriter fails to fsync the file in recovery mode

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #4879: bgwriter fails to fsync the file in recovery mode
Date: 2009-06-25 14:54:17
Message-ID: 1245941657.4038.106.camel@ebony.2ndQuadrant
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


On Thu, 2009-06-25 at 12:55 +0000, Fujii Masao wrote:

> The restartpoint by bgwriter in recovery mode caused the following error.
>
> ERROR: could not fsync segment 0 of relation base/11564/16422_fsm: No
> such file or directory

I think I see a related bug also.

register_dirty_segment() run by Startup process doesn't differentiate
correctly whether the bgwriter is active. md.c line 1194. So it will
continue to register fsync requests into its own private pendingOpsTable
when it should be forwarding them to bgwriter. When bgwriter runs
mdsync() the contents of startup's pendingOpsTable will be ignored.

That looks to me to be a serious bug.

--
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Simon Riggs 2009-06-25 15:06:35 Re: BUG #4879: bgwriter fails to fsync the file in recovery mode
Previous Message Tom Lane 2009-06-25 14:49:09 Re: BUG #4879: bgwriter fails to fsync the file in recovery mode