|From:||Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>|
|To:||Petr Jelinek <petr(dot)jelinek(at)2ndquadrant(dot)com>|
|Cc:||Andrew Dunstan <andrew(dot)dunstan(at)2ndquadrant(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org|
|Subject:||Re: [COMMITTERS] pgsql: Use asynchronous connect API in libpqwalreceiver|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
Petr Jelinek <petr(dot)jelinek(at)2ndquadrant(dot)com> writes:
> On 17/03/17 17:28, Tom Lane wrote:
>> Yeah, I'm afraid we had better do something more or less like this.
>> It's interesting to speculate about whether WaitEventSet could keep
>> additional state that would avoid the need for a dummy send() every
>> time, but that seems like material for new development not a bug fix.
> Thanks, now that I look at it again I think we might need to do cycle
> with the occurred_events and returned_events and not return on first
> find since theoretically there can be multiple sockets if this gets
> called directly and not via WaitLatchOrSocket(). I don't have mental
> power to finish it up right now though, sorry for that.
I think WaitEventSet is only required to identify at least one reason
for ending the wait; it is not required to identify all of them.
(Even if it tried to do so, the information could be out of date by
the time it returns.) So I'm not particularly fussed about that,
even if we had code that waited on write-ready for multiple sockets
which I don't believe we do.
regards, tom lane
|Next Message||Alvaro Herrera||2017-03-17 17:39:26||Re: [COMMITTERS] pgsql: Remove objname/objargs split for referring to objects|
|Previous Message||Petr Jelinek||2017-03-17 16:36:00||Re: [COMMITTERS] pgsql: Use asynchronous connect API in libpqwalreceiver|
|Next Message||Jeff Janes||2017-03-17 17:24:21||pageinspect and hash indexes|
|Previous Message||Alvaro Herrera||2017-03-17 17:21:26||Re: [PATCH] Move all am-related reloption code into src/backend/access/[am-name] and get rid of relopt_kind for custom AM|