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 1lwLNn-00039k-Vh for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Jun 2021 09:10:47 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lwLNm-0007I1-RR for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Jun 2021 09:10:46 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lwLNm-0007Hr-Js for pgsql-hackers@lists.postgresql.org; Thu, 24 Jun 2021 09:10:46 +0000 Received: from codesynthesis.com ([188.40.148.39]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lwLNl-0002OK-HE for pgsql-hackers@lists.postgresql.org; Thu, 24 Jun 2021 09:10:46 +0000 Received: from brak.codesynthesis.com (unknown [105.225.47.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by codesynthesis.com (Postfix) with ESMTPSA id D761E5FB23; Thu, 24 Jun 2021 09:10:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codesynthesis.com; s=mail1; t=1624525845; bh=Ikq7qL4GGV5Eq55zY6SXd/o8hl3jtot+m9jLA3uOJLw=; h=Date:From:To:Subject:Message-ID:MIME-Version:From; b=gOYgkixJDnkw9zZgukbbmU5PtOaC+iDMgeuT83Oc07U+1z3NCZVm7G++PjRtePGwi seXLz3SP1/yIpjVl4FgDIBLECrPclnvKhlCGRnkLRV8FHMuVOMKdn2oMG6SYMHPS/2 VQGfBiKgWsMatVMoUv3VWcIfrTYnfba72VQbLdddwm7nJoTs1GNK4QSp4Ocf+ZX8dV EgHvakoWhZjukghL3qnM/PE/ZM3Ul3Nf1wZcLeoFR54QXDw9ceq3huvwagfOOUmdlJ AXHKA5uoJYV+U4PIwV/9PkF9YyRAotRhEjvQaJpzwxxevyuYE6qfDxvDWLH+76tMjK Sbpf4apNDCkZQ== Received: by brak.codesynthesis.com (Postfix, from userid 1000) id 63BFD1A802C0; Thu, 24 Jun 2021 11:10:41 +0200 (SAST) Date: Thu, 24 Jun 2021 11:10:41 +0200 From: Boris Kolpackov To: Alvaro Herrera Cc: pgsql-hackers@lists.postgresql.org Subject: Re: Pipeline mode and PQpipelineSync() Message-ID: References: <202106231655.5tkagqvcxej5@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202106231655.5tkagqvcxej5@alvherre.pgsql> Organization: Code Synthesis User-Agent: Mutt/1.5.24 (2015-08-30) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Alvaro Herrera writes: > Subject: [PATCH] Clarify that pipeline sync is mandatory > > --- > doc/src/sgml/libpq.sgml | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml > index 441cc0da3a..0217f8d8c7 100644 > --- a/doc/src/sgml/libpq.sgml > +++ b/doc/src/sgml/libpq.sgml > @@ -5103,10 +5103,12 @@ int PQflush(PGconn *conn); > The server executes statements, and returns results, in the order the > client sends them. The server will begin executing the commands in the > pipeline immediately, not waiting for the end of the pipeline. > + Do note that results are buffered on the server side; a synchronization > + point, establshied with PQpipelineSync, is necessary > + in order for all results to be flushed to the client. s/establshied/established/ Otherwise, LGTM, thanks!