Re: postgres.h included from relcache.h - but removing it breaks pg_upgrade
От | Tom Lane |
---|---|
Тема | Re: postgres.h included from relcache.h - but removing it breaks pg_upgrade |
Дата | |
Msg-id | 550651.1631587219@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | postgres.h included from relcache.h - but removing it breaks pg_upgrade (Andres Freund <andres@anarazel.de>) |
Ответы |
Re: postgres.h included from relcache.h - but removing it breaks pg_upgrade
Re: postgres.h included from relcache.h - but removing it breaks pg_upgrade |
Список | pgsql-hackers |
Andres Freund <andres@anarazel.de> writes: > I noticed that postgres.h is included from relcache.h (starting in [1]) and > wanted to fix that - it violates our usual policy against including postgres.h > from within headers. Ugh, yeah, that's entirely against policy. As for the fix ... what in the world is pg_upgrade doing including relcache.h? It seems like there's a more fundamental problem here: either relcache.h is declaring something that needs to be elsewhere, or pg_upgrade is doing something it should not. > I was also wondering if we should put something in c.h and postgres.h to avoid > redundant includes? No. If anything, I'd want to throw an error for "redundant" includes of these files, because it's a pretty good red flag about poorly-thought-out header modularization. regards, tom lane
В списке pgsql-hackers по дате отправления: