Yes, Andres, I meant "pipelining", just couldn't choose correct word. Thank you for the answer(s)!
I also made changes in my own copy of libpq, and they work fine. I think the pipelining support is needed in libpq. Btw, how can I get the patch code? I want to compare your approach with mine. I couldn't figure out how to get the patch from the link. Thanks so much! On Sun, Apr 7, 2019 at 12:21 PM Andres Freund <and...@anarazel.de> wrote: > Hi, > > On 2019-04-07 20:57:56 +0200, Pavel Stehule wrote: > > ne 7. 4. 2019 v 20:47 odesÃlatel Konstantin Izmailov <pgf...@gmail.com> > > napsal: > > > > > Hi, > > > I'm experimenting with Postgres 10 and protocol v3. I noticed that the > > > Postgres allows executing multiple queries simultaneously (I basically > > > commented out a check that prevents sending another query in libpq > while > > > previous result(s) reading is not complete). Things appear like > working, > > > but I just wanted to ask if anyone else tried the same (logically > separate > > > results from multiple simultaneous queries)? > > > > > > > > Postgres cannot to execute simultaneous queries in one session. So > queries > > should be executed in serial form every time. > > I think what Konstantin is really talking about is pipelining > (i.e. sending multiple queries without waiting for the results > inbetween, thereby reducing latency), and that is actually supported by > postgres. Some drivers make fairly extensive use of it (e.g. the pgjdbc > driver). > > As for libpq: No, that's currently not supported. There is a patch that > I hope to get into v13 however: https://commitfest.postgresql.org/20/1317 > > Greetings, > > Andres Freund >