summary refs log tree commit diff
path: root/pkgs/servers
diff options
context:
space:
mode:
author1000101 <b1000101@pm.me>2022-06-10 18:32:17 +0200
committer1000101 <b1000101@pm.me>2022-06-11 00:44:25 +0200
commitfdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026 (patch)
tree577d3f6256ee5bdb17b2300fecae3042767ba1d8 /pkgs/servers
parent2acecae3440b3b52de0ff9eb6e1f653b0c8586a2 (diff)
downloadnixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar.gz
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar.bz2
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar.lz
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar.xz
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.tar.zst
nixpkgs-fdbfdc443cf902b5e8f0e4a3ec7c0aa1c5063026.zip
postgresqlPackages.pg_hint_plan: init at 14-1.4.0
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_hint_plan.nix32
-rw-r--r--pkgs/servers/sql/postgresql/packages.nix2
2 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/servers/sql/postgresql/ext/pg_hint_plan.nix b/pkgs/servers/sql/postgresql/ext/pg_hint_plan.nix
new file mode 100644
index 00000000000..25d27fcdfcb
--- /dev/null
+++ b/pkgs/servers/sql/postgresql/ext/pg_hint_plan.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchFromGitHub, postgresql }:
+
+stdenv.mkDerivation rec {
+  pname = "pg_hint_plan";
+  version = "14-1.4.0";
+
+  src = fetchFromGitHub {
+    owner = "ossc-db";
+    repo = pname;
+    rev = "REL${builtins.replaceStrings ["-" "."] ["_" "_"] version}";
+    sha256 = "sha256-2hYDn/69264x2lMRVIp/I5chjocL6UqIw5ry1qdRcDM=";
+  };
+
+  buildInputs = [ postgresql ];
+
+  installPhase = ''
+    mkdir -p $out/{lib,share/postgresql/extension}
+
+    cp *.so      $out/lib
+    cp *.sql     $out/share/postgresql/extension
+    cp *.control $out/share/postgresql/extension
+  '';
+
+  meta = with lib; {
+    description = "Extension to tweak PostgreSQL execution plans using so-called 'hints' in SQL comments";
+    homepage = "https://github.com/ossc-db/pg_hint_plan";
+    maintainers = with maintainers; [ _1000101 ];
+    platforms = postgresql.meta.platforms;
+    license = licenses.bsd3;
+    broken = versionOlder postgresql.version "14";
+  };
+}
diff --git a/pkgs/servers/sql/postgresql/packages.nix b/pkgs/servers/sql/postgresql/packages.nix
index 775dee206ed..5bbede9ddfc 100644
--- a/pkgs/servers/sql/postgresql/packages.nix
+++ b/pkgs/servers/sql/postgresql/packages.nix
@@ -14,6 +14,8 @@ self: super: {
 
     pg_ed25519 = super.callPackage ./ext/pg_ed25519.nix { };
 
+    pg_hint_plan = super.callPackage ./ext/pg_hint_plan.nix { };
+
     pg_rational = super.callPackage ./ext/pg_rational.nix { };
 
     pg_repack = super.callPackage ./ext/pg_repack.nix { };