We need a barrier at the end of server allocation. Currently, the master server can begin operation before the other processes are ready. This is a problem because we process startup events during ds_disseminate_all. When we do the DART allocation, some rpc handlers have already been registered at the DataSpaces layer, but the structures they rely upon have not all been initialized. So the trap we can currently fall into is for dataspaces rpcs to start processing while we're still in the client registration phase on non-master servers.
We need a barrier at the end of server allocation. Currently, the master server can begin operation before the other processes are ready. This is a problem because we process startup events during ds_disseminate_all. When we do the DART allocation, some rpc handlers have already been registered at the DataSpaces layer, but the structures they rely upon have not all been initialized. So the trap we can currently fall into is for dataspaces rpcs to start processing while we're still in the client registration phase on non-master servers.