Making Input/Output Completion Port API Available for Adaptive Server

Configure the Input/Output completion port (IOCP) API so that Adaptive Server can start.

The IOCP API allows Adaptive Server to process multiple simultaneous asynchronous I/O operations in a scalable fashion. If you do not have IOCP version 6.1.5.0 or later configured on your system, Adaptive Server does not start when you run dataserver, and you see an error message similar to:
% ./dataserver -v
exec(): 0509-036 Cannot load program dataserver because of the following errors:
        0509-130 Symbol   resolution failed for dataserver because:
        0509-136 Symbol   CreateIoCompletionPort (number 579) is not exported from dependent module /unix.
        0509-136 Symbol   GetMultipleCompletionStatus (number 580) is not exported from dependent module /unix.
        0509-136 Symbol   PostQueuedCompletionStatus (number 581) is not exported from dependent module /unix.
        0509-136 Symbol   ReadFile (number 582) is not exported from dependent module /unix.
        0509-136 Symbol   WriteFile (number 583) is not exported from dependent module /unix.
        0509-192 Examine .loader section symbols with the 'dump -Tv' command.
To check the status of IOCP on your machine, run the lsdev command at the UNIX prompt:
% lsdev -Cc iocp
If you installed IOCP and made it available, the system displays "Available" and provides additional information about the installation, such as:
% lsdev -Cc iocp
iocp0 Available  I/O Completion Ports
% lslpp -l bos.iocp.rte
Fileset                      	Level  State      		Description
Path: /usr/lib/objrepos
 	bos.iocp.rte         	6.1.5.0  COMMITTED  	I/O Completion Ports API
%
If IOCP is not available, running the lsdev command returns "0 Defined," such as:
% lsdev -Cc iocp
iocp0 Defined  I/O Completion Ports
%
To make IOCP available for Adaptive Server:
  1. Log in to the IBM machine as root and issue:
    # smitty iocp
  2. Select Change/Show Characteristics of I/O Completion Ports.
  3. Change the state of IOCP from Defined to Available.
  4. Restart the machine.
  5. Run lsdev again to confirm the updated status of IOCP.