sorry - I didn't make it clear - this is an upgrade-only problem.

This was a while ago, so forgive me if this isn't 100% accurate:

  1. User has old config file with the socket directory set to /tmp. 
  2. User upgrades postgres (from 8.0?)
  3. User has postgres with default socket in /var/run/postgresql, but old 
config overrides this, to /tmp
  4. Server creates sockets in /tmp
  5. Debian specific clients (e.g. libpq) don't read the postgresql.conf file 
and expect socket to be in /var/run/postgresql and fail.

Solution: remove the unix_socket_directory line in postgresql.conf if
you have an old config file.

This *doesn't* affect users who installed the newer postgresql on a
clean system(with no previous postgresql.conf).

Details:

Default postgresql (non-debian) socket dir is(?) in /tmp..

Debian specific changes set it to /var/run/postgresql (AFAIR, this is a #define 
in the deb specific patches int the postgresql deb-src).
Additionally, the newer postgresql.conf are generated without the 
unix_socket_directory line.

At some point (postgresql 8.0? Feisty?), the config line was changed in
the default postgresql.conf, but upgrading of course doesn't
update/replace the default config file.

Again, I apologize If I got something wrong - I spend some time back
then to investigate, browse through changelogs, etc - and I should have
mentioned the exact commits and changes back then.

I worked this out, but I was looking in the wrong place and it took too
long. I thought a debconf warning would at least warn those that have
the same Ubuntu installation since way back.

-- 
server upgrade should warn about non standard socket dir
https://bugs.launchpad.net/bugs/351497
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to