Using PQsocketPoll() for PIPELINE mode

From: Dominique Devienne <ddevienne(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Using PQsocketPoll() for PIPELINE mode
Date: 2024-08-14 12:50:55
Message-ID: CAFCRh-9R91Huzk2KFS8iKEo_eSXaZ0iAkGwx6LxfUexKzkeeRA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi. I've now used successfully the new PQsocketPoll() API
in the context of waiting for notifications, using beta2 and 3.

But now I'm looking into using it in the context of PIPELINE mode.
Where I suppose both forRead and forWrite are 1, but the return
code only indicates whether the condition is met. The doc says nothing
about OR or AND semantic, when both forRead and forWrite are true.

Perhaps it's deemed obvious from the use of select() or poll()?
Or is one supposed to call it once with forRead=forWrite=1 and
a timeout, then call it again twice with just one forFlag set and
a 0 timeout, to know the "details" about which "side" is ready?

Or hasn't this use case been considered for PQsocketPoll(),
and thus the current return code isn't has precise as it could be?

Thanks for any precisions, --DD

Browse pgsql-general by date

  From Date Subject
Next Message 毛毛 2024-08-15 06:34:59 What is the best way to upgrade pgAdmin on Windows?
Previous Message Dominique Devienne 2024-08-14 08:04:17 Re: Column type modification in big tables