Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cF0Fd-00072h-0q for pgsql-hackers@arkaria.postgresql.org; Thu, 08 Dec 2016 15:04:49 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1cF0Fc-0001p1-Kl for pgsql-hackers@arkaria.postgresql.org; Thu, 08 Dec 2016 15:04:48 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1cF0ED-00073m-2m for pgsql-hackers@postgresql.org; Thu, 08 Dec 2016 15:03:21 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1cF0EA-0004ly-1u for pgsql-hackers@postgresql.org; Thu, 08 Dec 2016 15:03:19 +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 uB8F3GxM004956; Thu, 8 Dec 2016 10:03:16 -0500 From: Tom Lane To: Stephen Frost cc: pgsql-hackers@postgresql.org Subject: Re: pg_dump vs. TRANSFORMs In-reply-to: <20161208142116.GC23417@tamriel.snowman.net> References: <20160504183952.GE10850@tamriel.snowman.net> <20161207200915.GZ23417@tamriel.snowman.net> <729.1481151371@sss.pgh.pa.us> <20161208142116.GC23417@tamriel.snowman.net> Comments: In-reply-to Stephen Frost message dated "Thu, 08 Dec 2016 09:21:16 -0500" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <4954.1481209396.1@sss.pgh.pa.us> Date: Thu, 08 Dec 2016 10:03:16 -0500 Message-ID: <4955.1481209396@sss.pgh.pa.us> X-Pg-Spam-Score: -4.9 (----) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org Stephen Frost writes: > * Tom Lane (tgl@sss.pgh.pa.us) wrote: >> I have a vague feeling that the code for dumping casts and/or transforms >> may have some assumptions that the underlying function is also being >> dumped. Although maybe the assumption was really only what's fixed here, >> ie that there be a DumpableObject for the function. Anyway, take a close >> look for that. > I'll look around and see, though my hunch is that, at some point, we > were just pulling all functions and then an optimization was added to > exclude pg_catalog and no one noticed that it broke casts using built-in > functions. Nah, that's historical revisionism --- the exclusion for system functions is very ancient. It certainly predates transforms altogether, and probably predates the cast-dumping code in anything like its current form. I think the expectation was that casts using built-in functions were also built-in and so needn't be dumped. There may be a comment about it somewhere, which would need to be revised now. (Actually, the most likely way in which this would break things is if it started causing built-in casts to get dumped ... have you checked?) regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers