Re: BUG #3504: Some listening sessions never return from writing, problems ensue

Поиск
Список
Период
Сортировка
Искать
От
Peter Koczan
Тема
Re: BUG #3504: Some listening sessions never return from writing, problems ensue
Дата
Msg-id
4544e0330708161541w39cdf7a8s1b5beaad49064858@mail.gmail.com
Ответ на
Список
Дерево обсуждения
BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Heikki Linnakangas <heikki@enterprisedb.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Peter Koczan <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Peter Koczan <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Peter Koczan <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue tomas@tuxteam.de
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Heikki Linnakangas <heikki@enterprisedb.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Tom Lane <tgl@sss.pgh.pa.us>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue "Peter Koczan" <pjkoczan@gmail.com>
Re: BUG #3504: Some listening sessions never return from writing, problems ensue Heikki Linnakangas <heikki@enterprisedb.com>
Hey, I found something that finally clears netstat's recv-q with async
notifies. I don't quite understand what's going on, so any
enlightenment would be greatly appreciated. As near as I can figure,
the client doesn't appear to read the notifies until it sends a notify
of its own. Then it reads all pending notifies at once and clears the
recv-q.

For instance, I can open up two connections on my test server and
illustrate the problem.

Here's the netstat before everything.

[koczan@ator] ~ $ netstat | grep mitchell
tcp        0      0 ator.cs.wisc.edu:34279
mitchell.cs.wisc:postgresql ESTABLISHED
tcp        0      0 ator.cs.wisc.edu:34280
mitchell.cs.wisc:postgresql ESTABLISHED

Connection 1:
csdb=> listen req;
LISTEN

Connection 2:
csdb=> notify req;
NOTIFY
(repeat 5 times)

Netstat as of now (after 5 notifies):
[koczan@ator] ~ $ netstat | grep mitchell
tcp       70      0 ator.cs.wisc.edu:34279
mitchell.cs.wisc:postgresql ESTABLISHED
tcp        0      0 ator.cs.wisc.edu:34280
mitchell.cs.wisc:postgresql ESTABLISHED

Connection 1:
csdb=> notify req;
NOTIFY
Asynchronous notification "req" received from server process with PID 7268.
Asynchronous notification "req" received from server process with PID 7268.
Asynchronous notification "req" received from server process with PID 7268.
Asynchronous notification "req" received from server process with PID 7268.
Asynchronous notification "req" received from server process with PID 7268.
Asynchronous notification "req" received from server process with PID 7267.

Netstat as of now:
[koczan@ator] ~ $ netstat | grep mitchell
tcp        0      0 ator.cs.wisc.edu:34279
mitchell.cs.wisc:postgresql ESTABLISHED
tcp        0      0 ator.cs.wisc.edu:34280
mitchell.cs.wisc:postgresql ESTABLISHED

This does make some sense given our code (the listening connection
only listens, it never sends out notifies of its own). However, this
doesn't seem like expected behavior. I found nothing in the docs to
suggest this being the norm, and it seems odd to require a connection
to issue a notify itself before being able to read pending notifies
from another connection.

Any ideas?

Peter
В списке pgsql-bugs по дате отправления
От: Tom Lane
Дата:
От: rakesh kumar
Дата:
Сообщение: some information
FAQ