Re: BUG #15804: Assertion failure when using logging_collector with EXEC_BACKEND
Yuli Khodorkovskiy <yuli.khodorkovskiy@crunchydata.com>
From: Yuli Khodorkovskiy <yuli.khodorkovskiy@crunchydata.com>
To: Yuli Khodorkovskiy <yuli.khodorkovskiy@crunchydata.com>,
pgsql-bugs@lists.postgresql.org
Date: 2019-05-14T18:45:09Z
Lists: pgsql-bugs
Attachments
- 0001-Initialize-shared-memory-before-calling-SysLogger_St.patch (application/octet-stream) patch 0001
> On May 14, 2019, at 2:28 PM, PG Bug reporting form <noreply@postgresql.org> wrote: > > The following bug has been logged on the website: > > Bug reference: 15804 > Logged by: Yulian Khodorkovskiy > Email address: yuli.khodorkovskiy@crunchydata.com > PostgreSQL version: Unsupported/Unknown > Operating system: Centos 7.4 > Description: > > The following assertion fails when compiling postgres 12 on Linux (centos > 7.4) with EXEC_BACKEND and logging_collector enabled: > > `Assert(UsedShmemSegAddr != NULL);` in `PGSharedMemoryNoReAttach()` > > Commit 57431a911d3a650451d198846ad3194900666152 appears to have introduced > this regression by moving SysLogger_Start() before reset_shared() is called > and shared memory is initialized. > > For what it's worth, Windows 10/jacana (and maybe other windows builds) on > the build farm does not use logging_collector, which is perhaps why this > regression was not caught. > > Yuli > Attached is a patch that fixes the issue in the bug report.
Commits
-
Rearrange postmaster's startup sequence for better syslogger results.
- 9a86f03b4e8c 13.0 landed
-
Improve logrotate test so that it meaningfully exercises syslogger.
- 9d5c22d28f8c 12.0 landed
-
Revert "postmaster: Start syslogger earlier".
- 833451552925 12.0 landed
-
postmaster: Start syslogger earlier
- 57431a911d3a 12.0 cited