Dan Ports <drkp(at)csail(dot)mit(dot)edu> wrote:
> I think for SerializableXidHash we should probably just initially
> allocate it at its maximum size. Then it'll match the PredXact
> list which is allocated in full upfront, and there's no risk of
> being able to allocate a transaction but not register its xid. In
> fact, I believe there would be no way for starting a new
> serializable transaction to fail.
To be more precise, it would prevent an out of shared memory error
during an attempt to register an xid for an active serializable
transaction. That seems like a good thing. Patch to remove the
hint and initially allocate that HTAB at full size attached.
I didn't attempt to address the larger general issue of one HTAB
stealing shared memory from space calculated to belong to another,
and then holding on to it until the postmaster is shut down.
-Kevin