Received: from localhost (unknown [200.46.204.183]) by developer.postgresql.org (Postfix) with ESMTP id 1DD612E005E for ; Sat, 10 May 2008 08:54:34 -0300 (ADT) Received: from developer.postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 31594-05 for ; Sat, 10 May 2008 08:54:26 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from gmp-eb-inf-2.sun.com (gmp-eb-inf-2.sun.com [192.18.6.24]) by developer.postgresql.org (Postfix) with ESMTP id 84F8F2E009F for ; Sat, 10 May 2008 08:54:30 -0300 (ADT) Received: from fe-emea-10.sun.com (gmp-eb-lb-2-fe3.eu.sun.com [192.18.6.12]) by gmp-eb-inf-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id m4ABsRH4005672 for ; Sat, 10 May 2008 11:54:27 GMT Received: from conversion-daemon.fe-emea-10.sun.com by fe-emea-10.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) id <0K0N00501I0YRB00@fe-emea-10.sun.com> (original mail from Zdenek.Kotala@Sun.COM) for pgsql-hackers@postgresql.org; Sat, 10 May 2008 12:54:27 +0100 (BST) Received: from [192.168.2.4] ([89.103.93.253]) by fe-emea-10.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) with ESMTPSA id <0K0N00CX5IEQF3D0@fe-emea-10.sun.com>; Sat, 10 May 2008 12:54:27 +0100 (BST) Date: Sat, 10 May 2008 13:52:28 +0200 From: Zdenek Kotala Subject: Re: bloated heapam.h In-reply-to: <20080509185610.GJ5748@alvh.no-ip.org> To: Alvaro Herrera Cc: Pg Hackers Message-id: <48258C7C.9030103@sun.com> MIME-version: 1.0 Content-type: text/plain; format=flowed; charset=us-ascii Content-transfer-encoding: 7BIT References: <20080509185610.GJ5748@alvh.no-ip.org> User-Agent: Thunderbird 2.0.0.12 (X11/20080325) X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200805/295 X-Sequence-Number: 118294 Alvaro Herrera napsal(a): > Others are more conflictive. For example syncscan.c is keeping the > prototypes for its own functions on heapam.h. Also pruneheap.c and > rewriteheap.c. As a result, not only themselves need to include > heapam.h (without any other need for it), but they force some other > files into including heapam.h to get their prototypes. I think this is > a mistake; I propose splitting those prototypes to their own files, and > #including those as appropriate. > > Objections? I have similar thing in my TODO list. See my patch from March commit fest and discussion. I need solve two main issues - remove postgres.h from binaries and keep history of structures (for pg_upgrade project). My idea is split structures and functions in separate header files. Zdenek http://archives.postgresql.org/pgsql-patches/2007-10/msg00197.php http://archives.postgresql.org/pgsql-patches/2008-04/msg00149.php