Added changes related to the latest master (for individual LWLocks definitions)
If I haven't said this clearly enough already, I'm not OK with changing the tranche name from char * to a fixed-size character array. Nor am I OK with limiting the maximum number of tranches to 64. I worked hard to set this system up so that it did not have limits on the number of tranches or the lengths of their names, and I don't see any good reason to add those limitations now.
Yes, that is because I tried to go with current convention working with
shmem in Postgres (there are one function that returns the size and
others that initialize that memory). But I like your suggestion about
API functions, in that case number of tranches and locks will be known