Control: tags -1 moreinfo

Re: Andreas Beckmann 2013-05-28 
<[email protected]>
> I'm experimenting with db support for piuparts tests and therefore
> postgresql needs to be installed and started in the test chroots.

Fwiw, which services/packages come with out-of-the-box usable
PostgreSQL support? For me, dbconfig-common sort of never works...

For testing stuff we've recently added a pg_virtualenv wrapper to
postgresql-common that will fire up a PG cluster with all PG* env vars
set such you can access it, and if the script you give it exits, it
will remove the cluster again. (Currently it needs root, there will be
non-root support in the upcoming version 144, check bzr.)

> Until now this worked fine (with an adjusted policy-rc.d that allows
> starting of certain services), but has recently stopped to do so in
> sid. It still works fine in wheezy.

I touched the "create cluster" part a bit, but I don't think that's
your problem:

diff -pu ../wheezy/debian/maintscripts-functions debian/maintscripts-functions 
--- ../wheezy/debian/maintscripts-functions     2012-10-15 07:00:27.000000000 
-0700
+++ debian/maintscripts-functions       2013-05-10 18:52:30.000000000 -0700
[...]
@@ -29,7 +32,10 @@ configure_version() {
     [ "$VERSION" ] || { echo "Error: configure_version: need version 
parameter" >&2; exit 1; }
     if [ ! -d "/etc/postgresql/$VERSION" ] || [ -z "$(ls 
/etc/postgresql/$VERSION)" ] || \
        [ -z "$(ls /etc/postgresql/$VERSION/*/postgresql.conf 2>/dev/null)" ]; 
then
-        [ "$2" ] || /usr/bin/pg_createcluster -u postgres $VERSION main || {
+        # skip creating the main cluster when this is not the first install, or
+        # when explicitely disabled ($create is 1/0/"")
+        create=$(perl -I/usr/share/postgresql-common -mPgCommon -e 'print 
PgCommon::config_bool(PgCommon::get_conf_value 0, 0, "createcluster.conf", 
"create_main_cluster")')
+        [ "$2" ] || [ "$create" = "0" ] || /usr/bin/pg_createcluster -u 
postgres $VERSION main || {
        echo "Error: could not create default cluster. Please create it 
manually with
 
   pg_createcluster $VERSION main --start


> apt-get install postgresql in the chroot ends with
> 
> ...
>   Setting up libpq5 (9.1.9-1) ...
>   Setting up openssl (1.0.1e-3) ...
>   Setting up postgresql-client-common (143) ...
>   Setting up postgresql-client-9.1 (9.1.9-1) ...
>   update-alternatives: using /usr/share/postgresql/9.1/man/man1/psql.1.gz to 
> provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode
>   Setting up ssl-cert (1.0.32) ...
>   Setting up postgresql-common (143) ...
>   Adding user postgres to group ssl-cert
>   Building PostgreSQL dictionaries from installed myspell/hunspell packages...
>   Removing obsolete dictionary files:
>   No PostgreSQL clusters exist; see "man pg_createcluster" ... (warning).
>   Setting up postgresql-9.1 (9.1.9-1) ...
>   Creating new cluster 9.1/main ...
>     config /etc/postgresql/9.1/main
>     data   /var/lib/postgresql/9.1/main
>     locale C
>     port   5432
>   update-alternatives: using 
> /usr/share/postgresql/9.1/man/man1/postmaster.1.gz to provide 
> /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode
>   Starting PostgreSQL 9.1 database server: main.
>   Setting up postgresql (9.3+142really9.1+143) ...
>   Processing triggers for libc-bin ...
>   ldconfig deferred processing now taking place
> 
> and this looks like some service should be running, but it is not.
> I could now chroot into the installation and run manually
>   invoke-rc.d postgresql start
> and this will work.

Can you check /var/log/postgresql/ if there's any error messages for
the first startup?

Christoph
-- 
[email protected] | http://www.df7cb.de/

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Pkg-postgresql-public mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-postgresql-public

Reply via email to