community.borland.com

Article #25334: Getting Error: fatal lock manager error -semop failed (acquire) errno 28

Problem:
The following error shows up when running application:

fatal lock manager error -semop failed (acquire) errno 28

Solution:
This error occurs when the InterBase tries to acquire semaphores for use with
the lock table and the operating system returns an error.

This ususally occurs when the system doesn't have enough semaphores left to 
allocate to InterBase.  

To fix this issue you need to either:
--------------------------------------------------------
1) lower the number of semaphores InterBase is trying to acquire.  This can be done
    by setting the semaphore parameter in the isc_config file in the root InterBase
    directory for v4.0 or lock_header file for v3.3.  For v4.x servers the parameter is
    V4_LOCK_SEM_COUNT  and SEMCOUNT for v3.3 servers.

2) Raise the number of semaphores that the operating system has to allocate to
    processes.  This is done by changing the kernel parameters rebuilding the
    kernel (on operating systems that don't have dynamically tunable kernal
    parameters).

Last Modified: 17-OCT-00