Claudio Natoli <claudio.natoli@memetrics.com> writes:
> All the ShmemInitHash structures are allocated using DynaHashCxt.
I'm not sure if you're confusing backend-local hashes with shared
hashes, or hash control headers with the actual shared data. But
the above is a false statement. DynaHashCxt is not shared.
Shared hashes are a bit tricky because there is a backend-local
structure that has a pointer into the shared memory --- is that
what's confusing you?
Keep in mind that this code did work in a fork/exec context not
so many moons ago. If you think you see a showstopper, it's a
relatively recent change and can be undone.
regards, tom lane