Andres Freund <and...@anarazel.de> writes: > On 2023-01-27 15:06:37 -0500, Tom Lane wrote: >> There are a lot of places where we're implicitly relying on >> cross-compilation-unit optimizations NOT happening, because the code isn't >> adequately decorated with memory barriers and the like.
> We have a fallback compiler barrier implementation doing that, but it > shouldn't be used on any halfway reasonable compiler. Cross-compilation-unit > calls don't provide a memory barrier - I assume you're thinking about a > compiler barrier? Sorry, yeah, I was being sloppy there. > I'm sure we have a few places that aren't that careful, but I would hope it's > not a large number. Are you thinking of specific "patterns" we've repeated all > over, or just a few cases you recall? I recall that we used to have dependencies on, for example, the LWLock functions being out-of-line. Probably that specific pain point has been cleaned up, but it surprises me not at all to hear that there are more. I agree that there are probably not a huge number of places that would need to be fixed, but I'm not sure how we'd go about finding them. regards, tom lane