hi craig,

On Mon, Sep 26, 2005 at 09:35:17AM +1000, Craig Small wrote:
> and this:
> fozzie:~# su postgres
> fozzie:~# id
> uid=0(root) gid=0(root) groups=0(root)
> fozzie:~# grep postgres /etc/passwd
> postgres:x:108:108:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/false
> 
> /bin/false means you need to su -s /bin/sh

ah, i htink this is a recent change:

mini-me[~]09:15:58$ getent passwd postgres
postgres:x:106:114:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash

simple enough to fix, anyway.

> That fixes the first set of bugs.
> Now, a chown problem, I'm using db-test-pgsql.
> 
> Why does this happen? From the typescript again with the su fixed.
> + chown -R dbtestpgsql /tmp/dbconfig-common.psql_home.5tU57X^M
> chown: `dbtestpgsql': invalid user^M
> 
> Indeed! it is an invalid user, its not a unix user but a postgresql
> user.

it should only be attempting to chown if the app was configured to
install via "ident sameuser", which currently is the default (because
by default this is the only method that will work out of the box).  of
course, if there's no system user, that won't work either.

as we speak i'm in the process of working with martin pitt to develop
set of postgres-hosted scripts that dbconfig-common can use to test,
add, and remove postgres configuration.  this should hopefully more
completely solve this problem.  in the very least, the admin will
be told what needs to be done (add a user, add a line to pg_hba.conf),
and of course dbconfig-common will be nice enough to offer to do
it for them.

> > also, could you post your source package online somewhere so i could
> > take a look at it and use it to try and flush out the bug?
> I can do that, but db-test-pgsql is a decent enough test for now.

fair enough.  i'll mess around with it a bit later today.

On Mon, Sep 26, 2005 at 11:15:36AM +1000, Craig Small wrote:
> Next problem.
> The package is installing the tables into template1.
> I see things like:
> ++ su -s /bin/sh jffnms -c 'env 
> HOME='\''/tmp/dbconfig-common.psql_home.N5k06P'\'' PGSSLMODE='\''prefer'\'' 
> psql --set ON_ERROR_STOP=1 -q  -U '\''postgres'\'' -U '\''postgres'\'' -U 
> '\''jffnms'\'' template1'^M
> + dbc_error='ERROR:  relation "acct_id_seq" already exists'^M
> +

it definitely shouldn't be doing that.  the only time it should be
connecting to template one is when it is testing the connection or
creating the database user.  i think there's some variable polution
going on somewhere, i'll look into that.


anyway, thanks for the extra info,
        sean

-- 

Attachment: signature.asc
Description: Digital signature

Reply via email to