On Mon, Aug 23, 2021 at 10:15:04AM -0400, Tom Lane wrote:
> Bruce Momjian <br...@momjian.us> writes:
> > On Sun, Aug 22, 2021 at 09:29:01PM +0800, Julien Rouhaud wrote:
> >> Then shouldn't we try to prevent direct access on all platforms rather than
> >> only one?
> 
> > Agreed.  If Julian says 99% of the non-export problems are GUCs, and we
> > can just export them all, why not do it?  We already export every global
> > variable on Unix-like systems, and we have seen no downsides.
> 
> By that argument, *every* globally-visible variable should be marked
> PGDLLIMPORT.  But the mere fact that two backend .c files need to access

No, Julien says 99% need only the GUCs, so that is not the argument I am
making.

> some variable doesn't mean that we want any random bit of code doing so.
> 
> And yes, I absolutely would prohibit extensions from accessing many
> of them, if there were a reasonable way to do it.  It would be a good
> start towards establishing a defined API for extensions.

Well, if Unix needed it, we would have addressed this more regularly,
but since it is only Windows that has this _feature_, it is the rare
Windows cases that need adjustment, and usually as an afterthought since
Windows isn't usually a primary tested platform.

What I am saying is that if we blocked global variable access on Unix,
initial testing would have showed what needs to be exported and it would
not be as big a problem.

-- 
  Bruce Momjian  <br...@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  If only the physical world exists, free will is an illusion.



Reply via email to