The Transport Semaphore Server enhances management for concurrent file accesses of multiple transport control programs in a network file system (NFS) environment. This solves the problem of how to deal with several processes trying to access a certain file in the transport directory at the same time. If concurrent access were allowed, unpredictable results might occur, resulting in possible downtime.
The current solution uses "file semaphores," one for each file to be accessed. A process has the right to access the file only when it cannot find the semaphore for that file. In this case, it creates the semaphore to prevent subsequent processes from accessing the file. It then processes the file and finally removes the semaphore when processing is complete, so allowing the next process to access the file.
However, with NFS or other shared file systems, caching might mean that the existence of a semaphore is not recognized on all hosts, even though the semaphore already exists. The Semaphore Server overcomes this problem.
The Semaphore server is a single standalone program running on any host. Instead of file semaphores, it uses semaphores located on the Semaphore Server (it is also possible to use both methods together if required). The Semaphore Server administers semaphores centrally so that there is no chance of concurrent file access.
The Semaphore Server is optional and we recommend you to use it only when the current file sharing mechanism is not sufficient to prevent concurrent file access.
SAP Note 132536