[Patch] PQconnectPoll() is blocked if target_session_attrs isread-write

Поиск
Список
Период
Сортировка
От Matsumura, Ryo
Тема [Patch] PQconnectPoll() is blocked if target_session_attrs isread-write
Дата
Msg-id 03040DFF97E6E54E88D3BFEE5F5480F74AC15BBD@G01JPEXMBYT04
обсуждение исходный текст
Ответы Re: [Patch] PQconnectPoll() is blocked if target_session_attrs isread-write  (Kyotaro Horiguchi <horikyota.ntt@gmail.com>)
RE: [Patch] PQconnectPoll() is blocked if target_session_attrs isread-write  ("Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>)
Список pgsql-hackers
Hi

# I rewrote my previous mail.

PQconnectPoll() is used as method for asynchronous using externally or internally.
If a caller confirms a socket ready for writing or reading that is
requested by return value of previous PQconnectPoll(), next PQconnectPoll()
must not be blocked. But if the caller specifies target_session_attrs to
'read-write', PQconnectPoll() may be blocked.

Detail:
If target_session_attrs is set to read-write, PQconnectPoll() calls
PQsendQuery("SHOW transaction_read_only") althogh previous return value was
PGRES_POLLING_READING not WRITING.
In result, PQsendQuery() may be blocked in pqsecure_raw_write().

I attach a patch.

Regards
Ryo Matsumura

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Tsunakawa, Takayuki"
Дата:
Сообщение: RE: Speed up transaction completion faster after many relations areaccessed in a transaction
Следующее
От: David Rowley
Дата:
Сообщение: Re: Speed up transaction completion faster after many relations areaccessed in a transaction