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 1nBgUv-0004NQ-5m for pgsql-hackers@arkaria.postgresql.org; Sun, 23 Jan 2022 17:17:49 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nBgUs-0004Fx-1o for pgsql-hackers@arkaria.postgresql.org; Sun, 23 Jan 2022 17:17:46 +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 1nBgUr-0004Fo-Oe for pgsql-hackers@lists.postgresql.org; Sun, 23 Jan 2022 17:17:45 +0000 Received: from sfr-1.cri.mines-paristech.fr ([77.158.180.225] helo=smtp.cri.ensmp.fr) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nBgUo-00078B-1q for pgsql-hackers@lists.postgresql.org; Sun, 23 Jan 2022 17:17:44 +0000 Received: from pseudo (185.141.6.84.rev.sfr.net [84.6.141.185]) by smtp.cri.ensmp.fr (Postfix) with ESMTPSA id 1A682C013F; Sun, 23 Jan 2022 18:20:42 +0100 (CET) Date: Sun, 23 Jan 2022 18:17:37 +0100 (CET) From: Fabien COELHO X-X-Sender: fabien@pseudo To: Peter Eisentraut cc: "pgsql-hackers@lists.postgresql.org" Subject: Re: psql - add SHOW_ALL_RESULTS option In-Reply-To: <47bcee2e-3e4c-a0ea-daee-9b3e2d65df05@enterprisedb.com> Message-ID: References: <18c78a01-4a34-9dd4-f78b-6860f1420c8e@enterprisedb.com> <6954328d-96f2-77f7-735f-7ce493a40949@enterprisedb.com> <2570e2ae-fa0f-aac9-f72f-bb59a9983a20@enterprisedb.com> <46259d13-5f90-1475-3c85-d7a597a2b862@enterprisedb.com> <20220113054433.wdjhidtm7gvyhfts@alap3.anarazel.de> <47bcee2e-3e4c-a0ea-daee-9b3e2d65df05@enterprisedb.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hallo Peter, >> Attached v14 moves the status extraction before the possible clear. I've >> added a couple of results = NULL after such calls in the code. > > In the psql.sql test file, the test I previously added concluded with \set > ECHO none, which was a mistake that I have now fixed. As a result, the tests > that you added after that point didn't show their input lines, which was > weird and not intentional. So the tests will now show a different output. Ok. > I notice that this patch has recently gained a new libpq function. I gather > that this is to work around the misbehaviors in libpq that we have discussed. Indeed. > But I think if we are adding a libpq API function to work around a > misbehavior in libpq, we might as well fix the misbehavior in libpq to > begin with. Adding a new public libpq function is a significant step, > needs documentation, etc. I'm not so sure. The choice is (1) change the behavior of an existing function or (2) add a new function. Whatever the existing function does, the usual anwer to API changes is "someone is going to complain because it breaks their code", so "Returned with feedback", hence I did not even try. The advantage of (2) is that it does not harm anyone to have a new function that they just do not need to use. > It would be better to do without. Also, it makes one wonder how others > are supposed to use this multiple-results API properly, if even psql > can't do it without extending libpq. Needs more thought. Fine with me! Obviously I'm okay if libpq is repaired instead of writing strange code on the client to deal with strange behavior. -- Fabien.