Re: Causeless CPU load waves in backend, on windows, 9.5.5 (EDB binary).

From: Nikolai Zhubr <n-a-zhubr(at)yandex(dot)ru>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, PG-General Mailing List <pgsql-general(at)postgresql(dot)org>, Craig Ringer <craig(dot)ringer(at)2ndquadrant(dot)com>, Simon Riggs <simon(at)2ndquadrant(dot)com>
Subject: Re: Causeless CPU load waves in backend, on windows, 9.5.5 (EDB binary).
Date: 2017-02-01 23:14:47
Message-ID: 58926BE7.7000607@yandex.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

01.02.2017 1:02, I wrote:
[...]
>> Could you use process monitor or such to see what the process is doing
>> while using a lot of CPU?
>
> I'm not sure how to do this, especially considering that the process in
> question is running as a service?
>
> Now, some more input:
>
> * 9.5.2 server running on linux x86_64 - unaffected! (What a relief! We
> are moving to Centos soon anyway!)
>
> * 9.4.4 server running on win7 32-bit - affected, same thing as on XP.

I've managed to create a "fix" (see diff below).
It looks like the wait logic is somehow broken on windows currently,
though I can not find the problem myself yet.
It would be great if someone more familiar with the (windows-specific)
code came up with ideas.
I have a build environment ready so I could do more tests then.

--- be-secure.c.orig 2017-02-01 22:37:37.228032608 +0300
+++ be-secure.c 2017-02-01 22:51:17.655751292 +0300
@@ -159,6 +159,7 @@
* socket to become ready again.
*/
}
+ Sleep(15); /* n.zhubr */
goto retry;
}

@@ -238,6 +239,7 @@
* socket to become ready again.
*/
}
+ Sleep(15); /* n.zhubr */
goto retry;
}

Thank you.

Nikolai

>
>
> Thank you.
>
> Nikolai
>
>>
>> Regards,
>>
>> Andres
>>
>
>
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Israel Brewster 2017-02-01 23:23:58 Re: Postgresql out-of-memory kill
Previous Message Tom Lane 2017-02-01 22:45:05 Re: Postgresql out-of-memory kill