guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#43771] [PATCH 5/5] Don't specify a default postgresql version to us


From: Christopher Baines
Subject: [bug#43771] [PATCH 5/5] Don't specify a default postgresql version to use for the service
Date: Fri, 2 Oct 2020 19:40:59 +0100

Currently, if the postgresql package major version changes, this is going to
break the service upon upgrade, because PostgreSQL will reject the data files
from the differing major version of the service.

Because it's important to either keep running a particular major version, or
intentionally upgrade, I think the configuration would be better with no
default. I think this is also going to be helpful when trying to assist users
upgrading PostgreSQL.
---
 doc/guix.texi              | 6 ++++--
 gnu/services/databases.scm | 6 ++----
 gnu/tests/databases.scm    | 4 +++-
 gnu/tests/guix.scm         | 1 +
 gnu/tests/monitoring.scm   | 4 +++-
 gnu/tests/web.scm          | 4 +++-
 6 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 641b410acf..4ce0072ed4 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -17742,7 +17742,9 @@ The following example describes a PostgreSQL service 
with the default
 configuration.
 
 @lisp
-(service postgresql-service-type)
+(service postgresql-service-type
+         (postgresql-configuration
+          (postgresql postgresql-10)))
 @end lisp
 
 If the services fails to start, it may be due to an incompatible
@@ -17768,7 +17770,7 @@ Data type representing the configuration for the
 @code{postgresql-service-type}.
 
 @table @asis
-@item @var{postgresql} (default: @code{postgresql})
+@item @var{postgresql}
 PostgreSQL package to use for the service.
 
 @item @var{port} (default: @code{5432})
diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index efad182a68..96d2dc4935 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -146,8 +146,7 @@ host        all     all     ::1/128         md5"))
 (define-record-type* <postgresql-configuration>
   postgresql-configuration make-postgresql-configuration
   postgresql-configuration?
-  (postgresql         postgresql-configuration-postgresql ;<package>
-                      (default postgresql))
+  (postgresql         postgresql-configuration-postgresql) ;<package>
   (port               postgresql-configuration-port
                       (default 5432))
   (locale             postgresql-configuration-locale
@@ -278,8 +277,7 @@ host        all     all     ::1/128         md5"))
                        (service-extension account-service-type
                                           (const %postgresql-accounts))
                        (service-extension profile-service-type
-                                          (compose list 
postgresql-configuration-postgresql))))
-                (default-value (postgresql-configuration))))
+                                          (compose list 
postgresql-configuration-postgresql))))))
 
 
 ;;;
diff --git a/gnu/tests/databases.scm b/gnu/tests/databases.scm
index e0544bbcd2..d3045cc3f7 100644
--- a/gnu/tests/databases.scm
+++ b/gnu/tests/databases.scm
@@ -215,7 +215,9 @@
 
 (define %postgresql-os
   (simple-operating-system
-   (service postgresql-service-type)))
+   (service postgresql-service-type
+            (postgresql-configuration
+             (postgresql postgresql-10)))))
 
 (define (run-postgresql-test)
   "Run tests in %POSTGRESQL-OS."
diff --git a/gnu/tests/guix.scm b/gnu/tests/guix.scm
index 6139e31cf0..ebee8d43af 100644
--- a/gnu/tests/guix.scm
+++ b/gnu/tests/guix.scm
@@ -83,6 +83,7 @@
    (service dhcp-client-service-type)
    (service postgresql-service-type
             (postgresql-configuration
+             (postgresql postgresql-10)
              (config-file
               (postgresql-config-file
                (hba-file
diff --git a/gnu/tests/monitoring.scm b/gnu/tests/monitoring.scm
index 17b9edc3ac..7371b02fe1 100644
--- a/gnu/tests/monitoring.scm
+++ b/gnu/tests/monitoring.scm
@@ -307,7 +307,9 @@ zabbix||{}
   (let ((base-os
          (simple-operating-system
           (service dhcp-client-service-type)
-          (service postgresql-service-type)
+          (service postgresql-service-type
+                   (postgresql-configuration
+                    (postgresql postgresql-10)))
           (service zabbix-front-end-service-type
                    (zabbix-front-end-configuration
                     (db-password "zabbix")))
diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm
index 7513eab2e4..7f4518acd2 100644
--- a/gnu/tests/web.scm
+++ b/gnu/tests/web.scm
@@ -567,7 +567,9 @@ HTTP-PORT."
              (config
               (httpd-config-file
                (listen '("8080"))))))
-   (service postgresql-service-type)
+   (service postgresql-service-type
+            (postgresql-configuration
+             (postgresql postgresql-10)))
    (service patchwork-service-type
             (patchwork-configuration
              (patchwork patchwork)
-- 
2.28.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]