On Thursday 09 March 2017 12:49:49 Tom Lane wrote: > John Iliffe <john.iliffe@xxxxxxxxx> writes: > > On Thursday 09 March 2017 12:08:01 Tom Lane wrote: > >> AFAICS, the explanation must be that getaddrinfo() returned two IPv4 > >> addresses, one of which got bound successfully and the other not. > >> The bleat is about the non-working address, but you still ended up > >> with a working IPv4 socket. > >> > >> This recalls my earlier theory that there's something weird about > >> your networking configuration, but now we have a bit more information > >> about what the weirdness must look like. It might be useful to have > >> a look at "ifconfig" output on your machine. > > > > [root@prod04 John]# ifconfig -a > > enp0s31f6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 > > > > inet 192.168.1.6 netmask 255.255.255.255 broadcast > > 192.168.1.6 inet6 fe80::62d4:f478:8bbb:34a1 prefixlen 64 > > scopeid 0x20<link> > > > > ... > > lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 > > > > inet 127.0.0.1 netmask 255.0.0.0 > > inet6 ::1 prefixlen 128 scopeid 0x10<host> > > Ah-hah. You earlier showed your /etc/hosts file: > > ---------------------------- > [root(at)prod04 John]# cat /etc/hosts > 127.0.0.1 localhost localhost.localdomain localhost4 > localhost4.localdomain4 > > ::1 localhost localhost.localdomain localhost6 > > localhost6.localdomain6 > 192.168.1.8 prod03.coaxpublications.ca localhost > 192.168.1.1 default > ---------------------------- > > So given that, getaddrinfo is going to resolve "localhost" into the > set of addresses "127.0.0.1", "::1", and "192.168.1.8". PG successfully > binds to the first two, which match your "lo" interface, while it fails > to bind to the last one because *that ain't the address on your ethernet > card*. The postmaster will start anyway, as long as it was able to bind > to at least one of the addresses reported for "localhost", so the only > real damage is the confusing log message. > > We could probably have saved a whole lot of time here if the "could not > bind" bleat would print out the specific address that it's failing to > bind to. I have a really vague recollection of having wanted to do that > and not having found any portable library function for converting a > struct addrinfo to a string, but that was years if not decades ago. > We oughta try harder. > > (BTW, it strikes me as pretty insecure to list a non-loopback address > as part of "localhost", but that's a different topic.) > > regards, tom lane Ohhhhh... me bad! That was an inexcusable error on my part. I put the prod03 route in the wrong file and I'll have to look up where it should be Not your problem of course. And, of course, it isn't localhost at all. (this machine is prod04) Not sure when I did that. Anyhow, deleted that entry and PostgreSQL started properly with no error messages. Here is the status: start up messages: server stopped [postgres@prod04 pgsql_tablespaces]$ pg_ctl start -D /usr/pgsql_tablespaces server starting [postgres@prod04 pgsql_tablespaces]$ LOG: database system was shut down at 2017-03-09 14:22:17 EST LOG: MultiXact member wraparound protections are now enabled LOG: database system is ready to accept connections LOG: autovacuum launcher started Thank you and Adrian for all the trouble and especially for the speed at which you gave me answers. Regards, John -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general