* Alvaro Herrera (alvherre@2ndquadrant.com) wrote:
> Tom Lane wrote:
> > 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.
>
> I noticed the RLS side of things a week ago as well, and wasn't very
> pleased about it. I don't know about an axe, but we do need some
> serious cleanup.
Alright- I'll be looking into this. I've been in the weeds with the
renaming previously suggested but may just address this first.
Thanks,
Stephen