Re: problem with pg_stat_activity view
От | Ben Kim |
---|---|
Тема | Re: problem with pg_stat_activity view |
Дата | |
Msg-id | Pine.GSO.4.64.0809080913550.10898@coe.tamu.edu обсуждение исходный текст |
Ответ на | Re: problem with pg_stat_activity view (Alvaro Herrera <alvherre@commandprompt.com>) |
Список | pgsql-admin |
That explains it... I thought it was a precent encoding but at the same time a strange place for a control character. Regards, Ben Kim On Mon, 8 Sep 2008, Alvaro Herrera wrote: > >>> ERROR: invalid input syntax for type inet: >>> "fe80::104d:416e:a8dc:c02e%12" >>> >>> SQL state: 22P02 > > Interesting. > > When we HAVE_IPV6, there's code to remove stuff after a % in an address. > My bet is that what you're running was not compiled with HAVE_IPV6 and > so the code is not executed. Obviously this is invoked in > pg_stat_get_backend_client_addr(). > > /* > * clean_ipv6_addr --- remove any '%zone' part from an IPv6 address string > * > * XXX This should go away someday! > * > * This is a kluge needed because we don't yet support zones in stored inet > * values. Since the result of getnameinfo() might include a zone spec, > * call this to remove it anywhere we want to feed getnameinfo's output to > * network_in. Beats failing entirely. > * > * An alternative approach would be to let network_in ignore %-parts for > * itself, but that would mean we'd silently drop zone specs in user input, > * which seems not such a good idea. > */ > void > clean_ipv6_addr(int addr_family, char *addr) > { > #ifdef HAVE_IPV6 > if (addr_family == AF_INET6) > { > char *pct = strchr(addr, '%'); > > if (pct) > *pct = '\0'; > } > #endif > } > > -- > Alvaro Herrera http://www.CommandPrompt.com/ > PostgreSQL Replication, Consulting, Custom Development, 24x7 support > > -- > Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-admin >
В списке pgsql-admin по дате отправления: