Problem with listen_addresses = '*' on 8.4beta2 on AIX
От | Albe Laurenz |
---|---|
Тема | Problem with listen_addresses = '*' on 8.4beta2 on AIX |
Дата | |
Msg-id | D960CB61B694CF459DCFB4B0128514C202FF6640@exadv11.host.magwien.gv.at обсуждение исходный текст |
Ответы |
Re: Problem with listen_addresses = '*' on 8.4beta2 on AIX
|
Список | 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
В списке pgsql-hackers по дате отправления: