+10
nixos/doc/manual/release-notes/rl-2305.section.md
+10
nixos/doc/manual/release-notes/rl-2305.section.md
···- `services.chronyd` is now started with additional systemd sandbox/hardening options for better security.+- PostgreSQL has opt-in support for [JIT compilation](https://www.postgresql.org/docs/current/jit-reason.html). It can be enabled like this:- `services.dhcpcd` service now don't solicit or accept IPv6 Router Advertisements on interfaces that use static IPv6 addresses.
+37
nixos/modules/services/databases/postgresql.md
+37
nixos/modules/services/databases/postgresql.md
···+[JIT](https://www.postgresql.org/docs/current/jit-reason.html)-support in the PostgreSQL package+is disabled by default because of the ~300MiB closure-size increase from the LLVM dependency. It+This makes sure that the [`jit`](https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-JIT)-setting+is set to `on` and a PostgreSQL package with JIT enabled is used. Further tweaking of the JIT compiler, e.g. setting a different+query cost threshold via [`jit_above_cost`](https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-JIT-ABOVE-COST)+The attribute-names of JIT-enabled PostgreSQL packages are suffixed with `_jit`, i.e. for each `pkgs.postgresql`+(and `pkgs.postgresql_<major>`) in `nixpkgs` there's also a `pkgs.postgresql_jit` (and `pkgs.postgresql_<major>_jit`).+Alternatively, a JIT-enabled variant can be derived from a given `postgresql` package via `postgresql.withJIT`.+This is also useful if it's not clear which attribute from `nixpkgs` was originally used (e.g. when working with+[`config.services.postgresql.package`](#opt-services.postgresql.package) or if the package was modified via an
+20
-7
nixos/modules/services/databases/postgresql.nix
+20
-7
nixos/modules/services/databases/postgresql.nix
·········mkThrow = ver: throw "postgresql_${ver} was removed, please upgrade your postgresql version.";
+1
nixos/tests/all-tests.nix
+1
nixos/tests/all-tests.nix
···
+48
nixos/tests/postgresql-jit.nix
+48
nixos/tests/postgresql-jit.nix
···
+1
-1
nixos/tests/postgresql-wal-receiver.nix
+1
-1
nixos/tests/postgresql-wal-receiver.nix
···-in builtins.listToAttrs (map makePostgresqlWalReceiverTest (builtins.attrNames (import ../../pkgs/servers/sql/postgresql { })))+in builtins.listToAttrs (map makePostgresqlWalReceiverTest (builtins.attrNames (import ../../pkgs/servers/sql/postgresql pkgs)))
+1
-1
nixos/tests/postgresql.nix
+1
-1
nixos/tests/postgresql.nix
+157
-63
pkgs/servers/sql/postgresql/default.nix
+157
-63
pkgs/servers/sql/postgresql/default.nix
···+# for <13 (where it got removed: https://github.com/postgres/postgres/commit/c45643d618e35ec2fe91438df15abd4f3c0d85ca)···············(if atLeast "13" then ./patches/socketdir-in-run-13.patch else ./patches/socketdir-in-run.patch)······+substituteInPlace "$out/lib/pgxs/src/Makefile.global" --replace ${self.llvmPackages.stdenv.cc}/bin/clang clang···# ! ERROR: could not load library "/build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so": Error loading shared library libpq.so.5: No such file or directory (needed by /build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so)# https://git.alpinelinux.org/aports/tree/main/postgresql/disable-broken-tests.patch?id=6d7d32c12e073a57a9e5946e55f4c1fbb68bd442·········
+1
pkgs/servers/sql/postgresql/ext/plv8/default.nix
+1
pkgs/servers/sql/postgresql/ext/plv8/default.nix
+1
-1
pkgs/servers/sql/postgresql/ext/postgis.nix
+1
-1
pkgs/servers/sql/postgresql/ext/postgis.nix
···
+13
pkgs/top-level/all-packages.nix
+13
pkgs/top-level/all-packages.nix
···