Re: Reducing header interdependencies around heapam.h et al. - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Reducing header interdependencies around heapam.h et al.
Date
Msg-id 20190114041426.prkmvdntqt4xegkc@alap3.anarazel.de
Whole thread Raw
In response to Re: Reducing header interdependencies around heapam.h et al.  (Andres Freund <andres@anarazel.de>)
Responses Re: Reducing header interdependencies around heapam.h et al.  (Alvaro Herrera <alvherre@2ndquadrant.com>)
List pgsql-hackers
On 2019-01-13 19:05:03 -0800, Andres Freund wrote:
> Hi,
> 
> On 2019-01-13 23:54:58 -0300, Alvaro Herrera wrote:
> > On 2019-Jan-13, Andres Freund wrote:
> > 
> > > Alvaro, you'd introduced the split of HeapScanDesc and HeapScanDescData
> > > being in different files (in a3540b0f657c6352) - what do you think about
> > > this change?  I didn't revert that split, but I think we ought to
> > > consider just relying on a forward declared struct in heapam.h instead,
> > > this split is pretty confusing and seems to lead to more interdependence
> > > in a lot of cases.
> > 
> > I wasn't terribly happy with that split, so I'm not opposed to doing
> > things differently.  For your consideration, I've had this patch lying
> > around for a few years, which (IIRC) reduces the exposure of heapam.h by
> > splitting relscan.h in two.  This applies on top of dd778e9d8884 (and as
> > I recall it worked well there).
> 
> You forgot to attach that patch... :).
> 
> I'm not sure I see a need to split relscan

One split I am wondering about however is splitting out the sysstable_
stuff out of genam.h. It's imo a different component and shouldn't
really be in there. Would be quite a bit of rote work to add all the
necessary includes over the backend...

Greetings,

Andres Freund


pgsql-hackers by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Ryu floating point output patch
Next
From: Craig Ringer
Date:
Subject: Re: Reviving the "Stopping logical replication protocol" patch fromVladimir Gordichuk