Too many logs are written on Windows (LOG: could not reserve shared memory region (addr=%p) for child %p:)

From: "Takahashi, Ryohei" <r(dot)takahashi_2(at)jp(dot)fujitsu(dot)com>
To: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Too many logs are written on Windows (LOG: could not reserve shared memory region (addr=%p) for child %p:)
Date: 2018-11-20 06:20:45
Message-ID: EE586BE92A4AFB45B03310C2A0C0565D6D0FE960@G01JPEXMBKW03
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

My customer uses PostgreSQL on Windows and hits the problem that following log is written to the server logs too frequently (250 thousand times per day).
"LOG: could not reserve shared memory region (addr=%p) for child %p:"

This log is written when pgwin32_ReserveSharedMemoryRegion() in win32_shmem.c fails. If fails, internal_forkexec() in postmaster.c retries up to 100 times. In most of my customer cases, internal_forkexec() finally succeeded to pgwin32_ReserveSharedMemoryRegion() by retrying.

According to the comment of internal_forkexec(), pgwin32_ReserveSharedMemoryRegion() sometimes fails if ASLR is active. If so, I think administrators are not interested in this log since it is a normal event.

I think the log level should not be "LOG", but should be lower level such as "DEBUG1".

Regards,
Ryohei Takahashi

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Langote 2018-11-20 06:24:51 Re: typo fix
Previous Message Amit Kapila 2018-11-20 06:14:35 Re: New function pg_stat_statements_reset_query() to reset statistics of a specific query