Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gwYbs-0001T3-RG for pgsql-bugs@arkaria.postgresql.org; Wed, 20 Feb 2019 20:36:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1gwYbq-00031R-W3 for pgsql-bugs@arkaria.postgresql.org; Wed, 20 Feb 2019 20:36:50 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gwYbq-00031K-Pn for pgsql-bugs@lists.postgresql.org; Wed, 20 Feb 2019 20:36:50 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gwYbn-0000qb-Bj for pgsql-bugs@lists.postgresql.org; Wed, 20 Feb 2019 20:36:49 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.4/8.14.4) with ESMTP id x1KKadWn028205; Wed, 20 Feb 2019 15:36:39 -0500 From: Tom Lane To: David Rowley cc: Michael Paquier , Julien Rouhaud , Alvaro Herrera , Ash M , PostgreSQL mailing lists Subject: Re: BUG #15572: Misleading message reported by "Drop function operation" on DB with functions having same name In-reply-to: References: <20190212030927.GF1475@paquier.xyz> <7757.1550442703@sss.pgh.pa.us> <32561.1550594759@sss.pgh.pa.us> <20190220055627.GH15532@paquier.xyz> Comments: In-reply-to David Rowley message dated "Wed, 20 Feb 2019 21:34:15 +1300" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <28203.1550694999.1@sss.pgh.pa.us> Date: Wed, 20 Feb 2019 15:36:39 -0500 Message-ID: <28204.1550694999@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk David Rowley writes: > On Wed, 20 Feb 2019 at 18:56, Michael Paquier wrote: >> I think that the right call is to add the object type into the >> arguments of LookupFuncName(). I'm not clear how that helps exactly? > But there are plenty of callers that use LookupFuncName() directly. Do > you happen to know it's okay for all those to error out with the > additional error conditions that such a change would move into that > function? I certainly don't know that. The real problem here is that you've unilaterally decided that all callers of get_object_address() need a particular behavior --- and not only that, but a behavior that seems fairly surprising and unprincipled, given that get_object_address's option is documented as "missing_ok" (something the patch doesn't even bother to change). It's not very apparent to me why function-related lookups should start behaving differently from other lookups in that function, and it's sure not apparent that all callers of get_object_address() are on board with it. Should we be propagating that 3-way flag further up, to get_object_address() callers? I dunno. regards, tom lane