From: | "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at> |
---|---|
To: | <pgsql-hackers(at)postgresql(dot)org>, <ac(at)esilo(dot)com> |
Subject: | Problem with listen_addresses = '*' on 8.4beta2 on AIX |
Date: | 2009-06-09 15:57:31 |
Message-ID: | D960CB61B694CF459DCFB4B0128514C202FF6640@exadv11.host.magwien.gv.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Building 8.4beta2 on my AIX test machine works fine,
but when I set listen_addresses = '*' in postgresql.conf,
the server fails to start.
This is what I get:
LOG: 00000: could not translate service "5432" to address: Hostname and service name not provided or found
LOCATION: StreamServerPort, pqcomm.c:294
WARNING: 01000: could not create listen socket for "*"
LOCATION: PostmasterMain, postmaster.c:843
FATAL: XX000: could not create any TCP/IP sockets
LOCATION: PostmasterMain, postmaster.c:848
It works fine if listen_addresses is the empty string or the hostname,
only with the asterisk it seems to fail.
These are the relevant entries in postgresql.conf:
listen_addresses = '*'
port = 5432
Relevant parts of pg_config:
CONFIGURE = '--prefix=/postgres/8.4' '--with-includes=/usr/local/include' '--with-libraries=/usr/local/lib' '--enable-debug' '--enable-cassert' '--with-ldap' '--without-readline' '--enable-integer-datetimes' '--without-zlib' '--enable-thread-safety' 'CC=gcc -maix64' 'LDFLAGS=-Wl,-bbigtoc'
CC = gcc -maix64
CPPFLAGS = -I/usr/local/include
CFLAGS = -O0 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -g
CFLAGS_SL =
LDFLAGS = -Wl,-bbigtoc -L/usr/local/lib -Wl,-blibpath:/postgres/8.4/lib:/usr/local/lib:/usr/lib:/lib
LDFLAGS_SL = -Wl,-bnoentry -Wl,-H512 -Wl,-bM:SRE
LIBS = -lpgport -lld -lm
VERSION = PostgreSQL 8.4beta2
The operating system is AIX 5.3 ML 03.
This change must have broken the code:
http://archives.postgresql.org/pgsql-committers/2009-01/msg00297.php
If listen_addresses is *, then getaddrinfo() will be called with
NULL for both the first and the second argument, which is not allowed
according to the documentation:
http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.commtechref/doc/commtrf2/getaddrinfo.htm
and should and does return EAI_NONAME = 8.
I guess that the buildfarm did not fail because it does not use '*'.
Yours,
Laurenz Albe
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2009-06-09 16:00:02 | page is uninitialized --- fixing |
Previous Message | Tom Lane | 2009-06-09 15:35:21 | Re: [Fwd: Re: dblink patches for comment] |