BUG #15641: Autoprewarm worker fails to start on Windows with huge pages in use

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: buschmann(at)nidsa(dot)net
Subject: BUG #15641: Autoprewarm worker fails to start on Windows with huge pages in use
Date: 2019-02-18 17:56:55
Message-ID: 15641-377d62c43f94b645@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 15641
Logged by: Hans Buschmann
Email address: buschmann(at)nidsa(dot)net
PostgreSQL version: 11.2
Operating system: Windows Server 2019 Standard
Description:

I recently moved a production system from PG 10.7 to 11.2 on a different
Server.

The configuration settings where mostly taken from the old system and
enhanced by new features of PG 11.

pg_prewarm was used for a long time (with no specific configuration).

Now I have added Huge page support for Windows in the OS and verified it
with vmmap tool from Sysinternals to be active.
(the shared buffers are locked in memory: Lock_WS is set).

When pg_prewarm.autoprewarm is set to on (using the default after initial
database import via pg_restore), the autoprewarm worker process
terminates immediately and generates a huge number of logfile entries
like:

CPS PRD 2019-02-17 16:11:53 CET 00000 11:> LOG: background worker
"autoprewarm worker" (PID 3996) exited with exit code 1
CPS PRD 2019-02-17 16:11:53 CET 55000 1:> ERROR: could not map dynamic
shared memory segment

There seem no timeout or waiting time to restart the autoprewarm worker in
this case.

The problem can be circumvented by disabling pg_prewarm.autoprewarm.

This behavior is transported by pg_basebackup to a physical replication
database with the same problem.

In my opinion the shared memory mapping of pr_prewarm is not aware of the
huge pages in windows and fails.

Unfortunatly I am not able to investigate the problem in the source code.

Configuration:
- Windows Server 2019 x64 (should be independent of this windows version)
- PG 11.2 64bit from EDB download on PostgeSQL Website
- Huge pages authorized in OS and verified to be used
- pg_prewarm loaded to database

With best regards

Hans Buschmann

Browse pgsql-bugs by date

  From Date Subject
Next Message Jeremy Finzel 2019-02-18 20:06:50 Re: Segmentation Fault in logical decoding get/peek API
Previous Message Andres Freund 2019-02-18 17:35:55 Re: BUG #15640: FATAL: XX000: cannot read pg_class without having selected a database