Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfWiG-0005Oo-HX for pgsql-hackers@arkaria.postgresql.org; Wed, 18 Nov 2020 23:18:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kfWiE-000578-67 for pgsql-hackers@arkaria.postgresql.org; Wed, 18 Nov 2020 23:18:06 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfWiD-000571-Vd for pgsql-hackers@lists.postgresql.org; Wed, 18 Nov 2020 23:18:05 +0000 Received: from wout2-smtp.messagingengine.com ([64.147.123.25]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfWi7-0005qZ-Ed for pgsql-hackers@lists.postgresql.org; Wed, 18 Nov 2020 23:18:04 +0000 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id D5C55AE8 for ; Wed, 18 Nov 2020 18:17:57 -0500 (EST) Received: from imap35 ([10.202.2.85]) by compute1.internal (MEProxy); Wed, 18 Nov 2020 18:17:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=anarazel.de; h= mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type; s=fm3; bh=r/CJrWOSUEC/DousBoa/ZhXbNMFKl0Y iez4NrHAzUuE=; b=wmTljiRAYllVOT4m3//xy4+W6mFVS5uw++js6SUkDYz5BlR cZc/GtcVPD0FG0aI3hDiofZ5CYylQCrruHKKe2XoIjIYFelT/IxPu1odY7QToWqV 46Ov3KiuBF3YJ7zvkgy+ClAROwPP/eVlXGJz52MfMj8bUcZP0BSMODKog8cusV+d pBSOWGvLD0DS1eD/NdOUU7MrjRbVU5l0T08ipIEz967kKreSHGzSnD9iT0QdmxPO YypKY2SGgPYIQHemb9NeeELv/wIoFD98ekLd5xCiOdWxAnVGmBzwjVFgxo20lWvO JgujE4LOvlGJxaiEJI6jdhv0D2GcJTIjXlTN53Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=r/CJrW OSUEC/DousBoa/ZhXbNMFKl0Yiez4NrHAzUuE=; b=AqbVInsrmQwyH+KEHb7gFV a6oWVoOzhHuyHHFiHndfljC36fRC5xkuILmXjbNLT45Ojhdzc9J66ICkuYQmPDln kcWRy7B2gG3Pw+ijdgDBvD4EhklmjFs4pfLiNeYQTO6dGH9638GHwCSjy2lQAspk aCmW1jAwPfqioaplY9ZfL8+htz1xMhdX751RrmRlKvVFCuPuB4dgJBpAI6X9loIB o7kPhRhxv4LrUXL52IX0i8AFfwy4nzNcL6RbJtyi6DwH8pKSb9bPc3bAceGSHTrN gzVi/GILXhFA3sKeBHiqskWqpf0ESRFLY5wa/YcWt5eDgH5qv1DiaKK4pznEy/kA == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrudefiedgtdejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvufgtsehttd ertderredtnecuhfhrohhmpedftehnughrvghsucfhrhgvuhhnugdfuceorghnughrvghs segrnhgrrhgriigvlhdruggvqeenucggtffrrghtthgvrhhnpeetgedvvdffgefhjeetve etveefgeffudduffegtdeujedvjeelgfevgedukeefvdenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrnhgurhgvshesrghnrghrrgiivghlrd guvg X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id D6CCE14C00B3; Wed, 18 Nov 2020 18:17:56 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.3.0-622-g4a97c0b-fm-20201115.001-g4a97c0b3 Mime-Version: 1.0 Message-Id: <6528520e-e5b1-4814-9877-aa6852aaa5f8@www.fastmail.com> In-Reply-To: <20201118175134.GA30739@alvherre.pgsql> References: <20201118175134.GA30739@alvherre.pgsql> Date: Wed, 18 Nov 2020 15:17:36 -0800 From: "Andres Freund" To: pgsql-hackers@lists.postgresql.org Subject: Re: PATCH: Batch/pipelining support for libpq Content-Type: text/plain List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Hi On Wed, Nov 18, 2020, at 09:51, Alvaro Herrera wrote: > On 2020-Nov-14, Daniel Verite wrote: > > > The patch I posted in [1] was pretty simple, but at the time, query > > results were always discarded. Now that pgbench can instantiate > > variables from query results, a script can do: > > select 1 as var \gset > > select :var; > > This kind of sequence wouldn't work in batch mode since it > > sends queries before getting results of previous queries. > > > > So maybe \gset should be rejected when inside a batch section. > > Hah. > > Hacking pgbench extensively is beyond what I'm willing to do for this > feature at this time. Making \gset rejected in a batch section sounds > simple enough and supports \beginbatch et al sufficiently to compare > performance, so I'm OK with a patch that does that. That'd be a small > extension to your previous patch, if I understand correctly. > > If you or others want to send patches to extend batch support with > read-write tracking for variables, feel free, but I hereby declare that > I'm not taking immediate responsibility for getting them committed. I think minimal support is entirely sufficient initially. Andres