basis_daioconfig: Asynchronous I/O not available
This error (or additional errors starting with basis_daioconfig
)
are raised when Adaptive Server is unable to start up with asynchronous
I/O on an HP-UX system. This problem is caused
by an incorrect operating system configuration. Common reasons include:
The user starting the server belongs to a group that has inadequate shared memory locking privileges.
There is insufficient lockable shared memory.
System memory and swap space have become fragmented.
Asynchronous I/O is not available.
This section explains how to investigate and correct the error, and provides additional resources for troubleshooting the memory problem.
Although they are reported in the Adaptive Server error log, basis_daioconfig
errors
originate from the operating system and can be corrected with appropriate
management of memory parameters and device permissions.
Investigate the problem by checking for additional asynchronous
I/O related messages in the error log; these messages are
printed just prior to the Asynchronous I/O
not available
error.
An error like the following means that the operating system does not have enough shared lockable memory to allocate to asynchronous I/O buffers.
ioctl(ASYNC_CONFIG) failed: Not enough space
Solutions vary, depending on the available resources and the type of tuning you choose. Options include:
Increase swap space. Ensure that the primary swap space is at least 1.5 times the amount of RAM.
Add more physical memory.
Restart the machine. If the space problem is due to memory fragmentation, a restart may solve the immediate problem (which will eventually reappear).
Reduce the server’s memory usage. If you have multiple Adaptive Servers running on the machine, consider the use of all servers.
Set the kernel parameter SWAPMEM_ON to 0 (zero), increasing the amount of shared lockable memory available.
Examine the kernel parameter UNLOCKABLE_MEM. A value of 0 allows the operating system to dedicate 75 percent of physical memory to lockable memory. Consult the HP-UX documentation http://www.hp.com for details.
An error like the following indicates a permission problem.
ioctl(ASYNC_CONFIG) failed: Not owner
Check that the file named /dev/async exists and is owned by user “sybase”, using this command:
ls -al /dev/async
It is also possible that the group to which the user starting the server belongs may not have permission to lock shared memory (MLOCK privilege). For details and instructions on setting the correct permissions, refer to the Sybase TechNote 20380 in the Sybase Technical Library http://www.sybase.com/detail?id=20380.
Refer to the following information about asynchronous I/O:
Adaptive Server Enterprise Installation Guide for HP-UX. The “Pre-installation tasks” section contains information about enabling asynchronous I/O.
Permissions Information for Upgrading to Adaptive Server Enterprise 11.5 or 11.9 for HP-UX Customers, in TechNote 20380 http://www.sybase.com/detail?id=20380.
Release Bulletin Replication Server for HP-UX. The “Special installation instructions” section describes how to enable asynchronous I/O for Replication Server.