Re: BUG #13484: Performance problem with logical decoding

From: olivier(dot)gosseaume(at)free(dot)fr
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #13484: Performance problem with logical decoding
Date: 2015-07-06 21:44:54
Message-ID: 750970196.17190175.1436219094798.JavaMail.root@zimbra72-e12.priv.proxad.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


>> >Are you stopping pg_recvlogical between the runs, or are you letting it
>> >run? The point of using it is that it's a streaming, i.e. that you do
>> >not need to pay to "startup" costs of logical decoding, which can be
>> >noticeable.
>>
>> No, I just let it run. In my case the bottleneck seems to be on server
>> side when spilling to disk. I can see the server build the files but
>> very slowly.
>
>That's odd. It's really just a plain series of writes. I wonder if for
>some reason windows disables write buffering or such?
>
>Ugh, I have a theory. I guess you can't easily recompile postgres with a
>patch and test again? I don't have access to windows...

Thanks for your finding. I can try to recompile on Windows (will look how). In fact I did a test with a tool called "API Monitor" which displays all Windows API calls during postgres execution. What I see is :
- approx 8000 writes
- for each individual write I see a call to FlushFileBuffers() which is very bad for performance, so it is a Windows only issue

>Any chance you could cross check on a unixoid OS? Just to rule out it's
>not some configuration/setup/? issue?

I can try in a virtualbox, but I would prefer to test your patch before if possible

br
Olivier

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message olivier.gosseaume 2015-07-06 21:48:33 Re: BUG #13484: Performance problem with logical decoding
Previous Message Andres Freund 2015-07-06 21:23:32 Re: BUG #13484: Performance problem with logical decoding