Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-05 Thread Andres Freund
On 2016-05-04 16:05:04 -0400, Robert Haas wrote: > I'm more than happy to rip it out, either now or after the tree opens > for 9.7 development. Let's rip the select support out in 9.7 then; given the relevant code was already written and tested there's no hurry. But if you'd rather do so earlier

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Andres Freund
Hi, On 2016-05-04 15:54:32 -0400, Tom Lane wrote: > Robert Haas writes: > > On Wed, May 4, 2016 at 3:35 PM, Tom Lane wrote: > >> Hmm ... wait, I take that back. poll() is required by SUS v2, which has > >> been our minimum baseline spec for a long time (even my pet dinosaur HPUX > >> has it).

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Robert Haas
On Wed, May 4, 2016 at 3:54 PM, Tom Lane wrote: > Robert Haas writes: >> On Wed, May 4, 2016 at 3:35 PM, Tom Lane wrote: >>> Hmm ... wait, I take that back. poll() is required by SUS v2, which has >>> been our minimum baseline spec for a long time (even my pet dinosaur HPUX >>> has it). As lon

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Tom Lane
Robert Haas writes: > On Wed, May 4, 2016 at 3:35 PM, Tom Lane wrote: >> Hmm ... wait, I take that back. poll() is required by SUS v2, which has >> been our minimum baseline spec for a long time (even my pet dinosaur HPUX >> has it). As long as we have an answer for Windows, it's hard to argue

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Robert Haas
On Wed, May 4, 2016 at 3:35 PM, Tom Lane wrote: > I wrote: >> Andres Freund writes: >>> Given that poll() has been introduced in SRV3 - which IIRC was below our >>> usual baseline - and windows is not an issue for latch, I think it'd >>> be ok to rely on it. > >> I think it's entirely reasonable

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Tom Lane
I wrote: > Andres Freund writes: >> Given that poll() has been introduced in SRV3 - which IIRC was below our >> usual baseline - and windows is not an issue for latch, I think it'd >> be ok to rely on it. > I think it's entirely reasonable to say that "if you want high performance > you should ha

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Merlin Moncure
On Wed, May 4, 2016 at 2:31 PM, Tom Lane wrote: > Andres Freund writes: >> Given that poll() has been introduced in SRV3 - which IIRC was below our >> usual baseline - and windows is not an issue for latch, I think it'd >> be ok to rely on it. > > I think it's entirely reasonable to say that "if

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Tom Lane
Andres Freund writes: > Given that poll() has been introduced in SRV3 - which IIRC was below our > usual baseline - and windows is not an issue for latch, I think it'd > be ok to rely on it. I think it's entirely reasonable to say that "if you want high performance you should have poll(3)". Fail

Re: [HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-04 Thread Andres Freund
Hi, On 2016-05-03 23:09:28 -0400, Robert Haas wrote: > So what's the best API for that? One idea is to change > ModifyWaitEvent to accept events = 0 instead of failing an assertion > inside WaitEventAdjustEpoll. We don't want to wait for EPOLLERR | > EPOLLHUP in that case since we'd have to wait

[HACKERS] modifying WaitEventSets (was: Performance degradation in commit ac1d794)

2016-05-03 Thread Robert Haas
On Sun, Mar 20, 2016 at 8:31 AM, Thomas Munro wrote: > One thing that I want to do but can't with this interface is remove an > fd from the set. I can AddWaitEventToSet returning a position, and I > can ModifyWait to provide new event mask by position including zero > mask, I can't actually remov