From 7a35667a1c0d9e2df7ce0a60d44b81ded92a996d Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Sun, 23 Mar 2025 16:43:00 +0100 Subject: [PATCH] postgresql: simplify doInstallCheck condition and fix comments --- pkgs/servers/sql/postgresql/generic.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/servers/sql/postgresql/generic.nix b/pkgs/servers/sql/postgresql/generic.nix index 52c6e9a7d7e7..e07b6c2616a3 100644 --- a/pkgs/servers/sql/postgresql/generic.nix +++ b/pkgs/servers/sql/postgresql/generic.nix @@ -395,12 +395,15 @@ let doInstallCheck = !(stdenv'.hostPlatform.isStatic) && - # Tests just get stuck on macOS 14.x for v13 and v14 - !(stdenv'.hostPlatform.isDarwin && olderThan "15") - && - # x86: Likely due to rosetta emulation: + # Tests currently can't be run on darwin, because of a Nix bug: + # https://github.com/NixOS/nix/issues/12548 + # https://git.lix.systems/lix-project/lix/issues/691 + # The error appears as this in the initdb logs: # FATAL: could not create shared memory segment: Cannot allocate memory - # aarch64: not sure why, e.g. https://hydra.nixos.org/build/292573408/nixlog/7 + # Don't let yourself be fooled when trying to remove this condition: Running + # the tests works fine most of the time. But once the tests (or any package using + # postgresqlTestHook) fails on the same machine for a few times, enough IPC objects + # will be stuck around, and any future builds with the tests enabled *will* fail. !(stdenv'.hostPlatform.isDarwin); installCheckTarget = "check-world";