On the warpath again about ill-considered inclusion nests - Mailing list pgsql-hackers

From Tom Lane
Subject On the warpath again about ill-considered inclusion nests
Date
Msg-id 16970.1415838651@sss.pgh.pa.us
Whole thread Raw
Responses Re: On the warpath again about ill-considered inclusion nests  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Re: On the warpath again about ill-considered inclusion nests  (Stephen Frost <sfrost@snowman.net>)
List pgsql-hackers
I noticed that the recent custom-path commit completely ignored my
advice about not including executor headers into planner headers or
vice versa.  On the way to fixing that, I was dismayed to discover
that the RLS patch has utterly bollixed all semblance of modularization
of the headers.  src/include/rewrite/rowsecurity.h, which one would
reasonably think to be a rewriter header (nevermind its header comment
to the contrary), nonetheless includes execnodes.h (executor stuff)
and relation.h (planner stuff), neither of which a rewriter header
has any business including.  And if that weren't bad enough, it's
been included into utils/rel.h (relcache), which is close enough
to guaranteeing that all planner and executor symbols are visible
in every darn module we've got.  Might as well just put everything
we have in postgres.h and abandon all pretense of modularity.

This needs to be cleaned up.  If you don't want me doing it with
an axe, better put some suggestions forward.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: using custom scan nodes to prototype parallel sequential scan
Next
From: Andres Freund
Date:
Subject: Re: REINDEX CONCURRENTLY 2.0