Windows 10 got stuck with PostgreSQL at starting up. Adding delay lets it avoid.

From: TAKATSUKA Haruka <harukat(at)sraoss(dot)co(dot)jp>
To: pgsql-general(at)postgresql(dot)org
Subject: Windows 10 got stuck with PostgreSQL at starting up. Adding delay lets it avoid.
Date: 2018-06-29 06:03:10
Message-ID: 20180629150310.b01664be02fde699ccc5f683@sraoss.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I got a trouble in PostgreSQL 9.3.x on Windows 10.
I would like to add new delay code as an official build option.

Windows 10 sometime (approximately once in 300 tries) hung up
at OS starting up. The logs say it happened while the PostgreSQL
service was starting. When OS stopped, some postgres auxiliary
process were started and some were not started yet.

The Windows dump say some threads of the postgres auxiliary process
are waiting OS level locks and the logon processes’thread are
also waiting a lock. MS help desk said that PostgreSQL’s OS level
deadlock caused OS freeze. I think it is strange story. But,
in fact, it not happened in repeated tests when I got rid of
PostgreSQL from the initial auto-starting services.

I tweaked PostgreSQL 9.3.x (the newest from the repository) to add
0.5 or 3.0 seconds delay after each sub process starts.
And then the hung up was gone. This test patch is attached.
It is only implemented for Windows. Also, I did not use existing
pg_usleep because it contains locking codes (e.g. WaitForSingleObject
and Enter/LeaveCriticalSection).

Although Windows OS may have some problems, I think we should have
a means to avoid it. Can PostgreSQL be accepted such delay codes
as build-time options by preprocessor variables?

Thanks,
Takatsuka Haruka

Attachment Content-Type Size
postmaster.c_0619_win32delay.diff text/plain 1.8 KB

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Thomas Kellerer 2018-06-29 06:34:18 Re: Windows 10 got stuck with PostgreSQL at starting up. Adding delay lets it avoid.
Previous Message Brent Wood 2018-06-29 02:33:19 pgloader question - postgis support