Обсуждение: sync rep & fsync=off

Поиск
Список
Период
Сортировка

sync rep & fsync=off

От
Robert Haas
Дата:
While investigating Simon's complaint about my patch of a few days
ago, I discovered that synchronous replication appears to slow to a
crawl if fsync is turned off on the standby.

I'm not sure why this is happening or what the right behavior is in
this case, but I think some kind of adjustment is needed because the
current behavior is quite surprising.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: sync rep & fsync=off

От
Grzegorz Jaskiewicz
Дата:
On 18 Mar 2011, at 21:12, Robert Haas wrote:

> While investigating Simon's complaint about my patch of a few days
> ago, I discovered that synchronous replication appears to slow to a
> crawl if fsync is turned off on the standby.
>
> I'm not sure why this is happening or what the right behavior is in
> this case, but I think some kind of adjustment is needed because the
> current behavior is quite surprising.
We have few servers here running 8.3. And few weeks ago I had to populate one database with quite a number of entries.
I have script that does that, but it takes a while. I decided to turn fsck to off. Oddly enough, the server started to
crawlquite badly, load was very high.  
That was 8.3 on rhel 5.4.

My point is, it is sometimes bad combination of disks and controllers that does that. Not necessarily software. fsync
offdoesn't always mean that things are going to fly, it can cause it to expose hardware bottlenecks much quicker.  



Re: sync rep & fsync=off

От
Robert Haas
Дата:
On Sat, Mar 19, 2011 at 11:34 AM, Grzegorz Jaskiewicz
<gj@pointblue.com.pl> wrote:
>
> On 18 Mar 2011, at 21:12, Robert Haas wrote:
>
>> While investigating Simon's complaint about my patch of a few days
>> ago, I discovered that synchronous replication appears to slow to a
>> crawl if fsync is turned off on the standby.
>>
>> I'm not sure why this is happening or what the right behavior is in
>> this case, but I think some kind of adjustment is needed because the
>> current behavior is quite surprising.
> We have few servers here running 8.3. And few weeks ago I had to populate one database with quite a number of
entries.
> I have script that does that, but it takes a while. I decided to turn fsck to off. Oddly enough, the server started
tocrawl quite badly, load was very high.
 
> That was 8.3 on rhel 5.4.
>
> My point is, it is sometimes bad combination of disks and controllers that does that. Not necessarily software. fsync
offdoesn't always mean that things are going to fly, it can cause it to expose hardware bottlenecks much quicker.
 

Well, it's possible.  But I think it'd be worth a look at the code to
see if there's some bad interaction there between the no-fsync code
and the sync-rep code - like, if we don't actually fsync, does the
flush pointer ever get updated?

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: sync rep & fsync=off

От
Fujii Masao
Дата:
On Sun, Mar 20, 2011 at 5:31 AM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Sat, Mar 19, 2011 at 11:34 AM, Grzegorz Jaskiewicz
> <gj@pointblue.com.pl> wrote:
>>
>> On 18 Mar 2011, at 21:12, Robert Haas wrote:
>>
>>> While investigating Simon's complaint about my patch of a few days
>>> ago, I discovered that synchronous replication appears to slow to a
>>> crawl if fsync is turned off on the standby.
>>>
>>> I'm not sure why this is happening or what the right behavior is in
>>> this case, but I think some kind of adjustment is needed because the
>>> current behavior is quite surprising.
>> We have few servers here running 8.3. And few weeks ago I had to populate one database with quite a number of
entries.
>> I have script that does that, but it takes a while. I decided to turn fsck to off. Oddly enough, the server started
tocrawl quite badly, load was very high. 
>> That was 8.3 on rhel 5.4.
>>
>> My point is, it is sometimes bad combination of disks and controllers that does that. Not necessarily software.
fsyncoff doesn't always mean that things are going to fly, it can cause it to expose hardware bottlenecks much quicker. 
>
> Well, it's possible.  But I think it'd be worth a look at the code to
> see if there's some bad interaction there between the no-fsync code
> and the sync-rep code - like, if we don't actually fsync, does the
> flush pointer ever get updated?

No, as far as I read the code. Disabling fsync increases the time taken
to close the WAL file?

Regards,

--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center