Skip site navigation (1) Skip section navigation (2)

Re: batching commands with libpq

From: yamt(at)mwd(dot)biglobe(dot)ne(dot)jp (YAMAMOTO Takashi)
To: tgl(at)sss(dot)pgh(dot)pa(dot)us
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: batching commands with libpq
Date: 2011-01-13 00:08:59
Message-ID: 20110113000859.EDC1419CEBA@mail.netbsd.org (view raw or flat)
Thread:
Lists: pgsql-novice
hi,

> yamt(at)mwd(dot)biglobe(dot)ne(dot)jp (YAMAMOTO Takashi) writes:
>> is there any way to send multiple commands together (ideally in a single
>> network packet), and then wait for their results, using libpq?  i want to
>> save extra round-trips.  while postgresql's fe-be on-wire protocol seems
>> to allow it (is it right?), i couldn't find a way with libpq.
> 
>> PQsendQuery(conn, "select timeofday();select timeofday();select timeofday();");
>> seems to work, but i want to use extended protocol.
> 
> You're out of luck: extended protocol intentionally doesn't allow
> multiple queries per string.
> 
> The wire protocol does in theory allow you to send more commands before
> waiting for the results of the first one, but that's not supported in
> libpq.  The only case you can do in libpq is multiple commands in a
> PQexec string.

thanks for explanation.
do you think it's worth extending the libpq api to allow two or
more in-flight commands?

YAMAMOTO Takashi

> 
> 			regards, tom lane

In response to

Responses

pgsql-novice by date

Next:From: YAMAMOTO TakashiDate: 2011-01-13 00:21:45
Subject: async fast-path calls?
Previous:From: richardDate: 2011-01-12 22:34:01
Subject: password passing between postgresql 8.4 and snort

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group