=================================
MACHINE SPECIFIC NOTES
FOR
IBM INFORMIX Database Server 12.10.FC2 PRODUCT RELEASE
ON IBM AIX 6.1 64bit
DATE: 22 Aug 2013
=================================
OS Information : Built on AIX 6.1 Technology Level 4 SP 3. Certified on AIX 7.1.
System Requirements
===================
1. This product was built on AIX 6.1 Technology Level 4 SP 3 using the
following compilers:
IBM XL C/C++ for AIX, V11.1 (5724-X13)
XL C/C++ Runtime 11.1.0.2
2. AIX patch requirement:
AIX 7.1:
September 2010 PTF for XL C for AIX, V11.1
3. The UNIX graphical tools provided with this release require X Window
system X11R6 and Motif 2.1 or later runtime libraries.
4. The High Performance Loader utilities, onpload and ipload, require a
minimum of 35 MB of memory and 70 MB of swap space in order to run.
5. If you are using Java UDRs, please refer to "AIX Loader Domains" under
J/Foundation section for details.
6. IBM Informix Database Server uses the libraries and utilities provided by
the IBM Global Security Kit (GSKit) for data encryption and Secure Sockets
Layer (SSL) communication. The GSKit is bundled with the server and will
be installed on your machine as part of the server installation process.
Here are more details on the GSKit:
a. The GSKit is also bundled with other IBM products and might
already be present on your machine. If GSKit 8.0.50.10 is not
installed, Informix server will install GSKit in /usr/opt/ibm/gsksa
directory on your machine.
b. The GSKit installation directory must have 30 MB of free disk space.
Check the following web site for the latest AIX system requirements
for IBM Informix Database Server:
http://www-01.ibm.com/support/docview.wss?rs=630&uid=swg27013343
System Configuration
====================
1. Location of Shared Memory
The ONCONFIG variable SHMBASE should be set to the following:
SHMBASE 0x700000010000000
Previously, Informix recommended 0x700000000000000 unless using J/Foundation
or ICU (GLU). Using this value avoids warnings.
2. Environment Variables
a. It is recommended that the environment variable INFORMIXSTACKSIZE be set
to 128 (the default is 64) if the application involves operations which
would require the IBM Informix Database Server to perform recursive
database tasks (for example, cascading deletes).
b. If you are using Java UDRs, set environment variable LDR_CNTRL to
include the value "USERREGS" and "LOADPUBLIC" before starting IBM
Informix Database Server.
export LDR_CNTRL=LOADPUBLIC@USERREGS
Feature Notes (alphabetized by feature)
=============
1. High Performance Loader
User-defined conversion routines must be provided in a dynamic, shared
library called ipldd11a_64.so. This library is installed in the
$INFORMIXDIR/lib directory. You can set the location of this file with
the HPL_DYNAMIC_LIB_PATH configuration parameter in file pointed to by
PLCONFIG environment variable. For more details, refer the manual
"High-Performance Loader User's Guide".
To create a 64-bit shared library, the environment variable OBJECT_MODE
should be set to 64 to convey to the compiler that a 64-bit object is to
be generated. The "-q64" flag for cc can also be used to indicate to the
compiler that 64-bit object is to be generated.
2. IPv6 Support
IBM Informix Server supports Internet Protocol Version 6 (128 Bit Internet
Addresses) as well as IPv4 (32 Bit Addresses).
In order for the machine name specified in the SQLHOSTS file to resolve to
the correct IP address, the name services files on the operating system
should be correctly configured. If the machine has IPv6 address configured
and the listener thread is bound to an IPv6 address, then the name
resolution files /etc/netsvc.conf should be configured to fetch IPv6
address. Also use the appropriate /etc/hosts setting if local machine
settings are used.
For compatibility with older IBM Informix client and server products,
assign the same hostname with both an IPv4 address and an IPv6 address.
If the listener needs to be bound to an IPv4 address and the name services
resolve the name in the order of the IPv6 address followed by IPv4 address,
then an explicit IPv4 address needs to be put in nodename field of SQLHOSTS
file. Client applications should also use the same setting.
3. J/Foundation (Java in the Server)
J/Foundation supports the 64bit JRE 6.0 release from IBM which uses
the AIX native threads based Java Virtual Machine.
The JRE 6.0 is available under $INFORMIXDIR/extend/krakatoa/jre and
should be used with J/Foundation.
To use this JRE, set the value of the ONCONFIG variable JVPJAVAHOME as
follows:
JVPJAVAHOME <jvphome>/jre
where <jvphome> is $INFORMIXDIR/extend/krakatoa
For developing Java UDRs used with J/Foundation, use 64bit JDK 5.0
which can be downloaded from IBM's Java website:
http://www.ibm.com/java/jdk/
For IBM Informix Database Server ONCONFIG settings for J/Foundation,
refer to "onconfig.std" in $INFORMIXDIR/etc.
AIX Loader Domains
------------------
If multiple shared libraries are loaded onto two VPs, one of which is
a Java VP, and the libraries are not loaded in the same order on each
VP, executing a function from the libraries can cause the IBM Informix
Database Server to core dump with the following message in online.log:
09:35:58 Assert Failed: Exception Caught. Type: MT_EX_OS, Context: ill
09:35:58 Who: Session(15, informix@ibms70, 46918, 1075033896)
Thread(41, sqlexec, 4010c7d8, 3)
File: mtex.c Line: 372
09:35:58 Action: Please notify Technical Support.
You would typically encounter this error if your application is using
both C UDRs and Java UDRs.
To resolve this problem, the AIX loader domains concept is used. The
loader domain provides a means of loading shared libraries at the same
virtual address in a set of processes. The loader domain file is created
during the installation of the IBM Informix Database Server. This is
installed as "/var/adm/ifx_loader_domain".
IBM Informix Database Server with J/Foundation on AIX requires the loader
domain file "/var/adm/ifx_loader_domain" to exist at all times. If the
file does not exist, create it as superuser using the following commands:
touch /var/adm/ifx_loader_domain
chgrp informix /var/adm/ifx_loader_domain
chmod 660 /var/adm/ifx_loader_domain
Java Attach API
------------------
There is a known defect (IZ73533) in the IBM Java SE Runtime Environment SR7
where if the Attach API is enabled, it causes high CPU utilization. In order
to avoid this behavior, the Attach API has been disabled by setting the
following server ONCONFIG parameter:
JVPARGS -Dcom.ibm.tools.attach.enable=no
4. Kernel Asynchronous I/O (KAIO)
KAIO is enabled by default on this platform.
The AIO subsystem is loaded by default but not activated. No AIO
server is started at AIX startup. The AIO server is automatically
started when applications are initiating AIO I/O requests. It stays
active as long as it services AIO I/O requests.
To disable KAIO, set the environment variable KAIOOFF:
KAIOOFF=1 ; export KAIOOFF ( for Bourne or Korn shell )
setenv KAIOOFF 1 ( for C shell )
Limit the number of resident memory segments allocated to Informix.
If you allocate a lot of resident memory segments to Informix and
Informix uses a lot of KAIO and direct I/O, KAIO read or write calls
might fail with errno 22 (EINVAL). EINVAL errors can lead to down dbspaces
or system aborts. The following error typically appears in the server log:
04:30:40 KAIO: error in kaio_WRITE, kaiocbp = 0x22b620d0, errno = 22
04:30:40 fildes = 258 (gfd 3), buf = 0x700000122b64000, nbytes = 4096,
offset = 130785280
The usual reason for these EINVAL errors is that the OS is running low
on resident memory pages because the Informix server has too many shared
memory segments allocated as "resident," as well as pinned OS kernel
memory and KAIO resources.
You can prevent these errors by setting fewer, or no, Informix server
shared memory segments as resident. Set the RESIDENT configuration
parameter in the onconfig file to 1 or 0.
5. Large Memory Addressability (LMA)
IBM Informix LMA provides the ability to support system configurations
with greater than 4GB of RAM. Most UNIX systems are limited to 4GB of
RAM based on the memory addressing limitations of 32-bit architectures.
The values for the following ONCONFIG parameters are increased from
32-bit to 64-bit platform by LMA support:
- The maximum number of buffers in BUFFERPOOL is 2147483647.
- The maximum of LRU queues for lrus field in BUFFERPOOL is 512.
- The DS_TOTAL_MEMORY, which is the total memory available for
decision support memory, is only limited by the amount of virtual
memory available. The sort memory comes out of the DS_TOTAL_MEMORY
memory and hence there is no explicit limit on the amount of sort
memory.
- The read ahead parameter RA_PAGES is only limited by the number of
buffers and therefore can be any value less than 2147483647. The
"chunk" write algorithm is not dependent on the amount of buffers
or shared memory and can write as many pages in a single I/O as
possible.
- The maximum size of any shared memory segment is 68719460352 bytes.
- The value for SHMADD is 67108848 kilobytes.
6. MQ Messaging Database Extension
The MQ extension provides mechanism for data exchange between
Informix server and queues managed by Websphere MQ.
On 64-bit AIX platforms, after installing Websphere MQ, remove the
symbolic links from /usr/lib to the 32-bit WebSphere MQ libraries using
the 'dltmqlnk' command described in Websphere MQ manual "Quick Beginnings
for AIX".
Note: MQ extension module expects Websphere MQ libraries installed in the
default location /usr/mqm. Otherwise create symbolic links from
/usr/mqm/lib64 to the 64-bit Websphere MQ libraries.
7. Network Protocols
The following protocols or interfaces are supported on this platform:
Berkeley sockets using TCP/IP
IPC using stream pipe (implemented using Unix Domain Sockets)
To use sockets with TCP/IP:
a. NETTYPE in the ONCONFIG file and the nettype field in the
sqlhosts file entry must contain "onsoctcp".
b. To enable an IBM Data Server Client to connect to Informix
Database Server, NETTYPE in the ONCONFIG file and the value data
of protocol in the sqlhosts file entry must contain "drsoctcp"
If a CLI or JCC client wants to connect to Informix server via
DRDA while supporting SQLI connections you could add a
DBSERVERALIASES entry to ONCONFIG which corresponds to the
sqlhosts file.
To use IPC (interprocess communication) with stream pipe:
a. NETTYPE in the ONCONFIG file and the nettype field in the
sqlhosts file entry must contain "onipcstr".
Fast poll is supported with TCP/IP and stream pipe interfaces. FASTPOLL
in the ONCONFIG file can be set to 0 to disable the fast poll. By default
the fast poll is enabled (value is 1).
Remote 32-bit applications and tools (example: ESQL/C, 4GL, ISQL) can
only connect to the IBM Informix Database Server using the TCP/IP
protocol.
Local 32-bit applications and tools can connect to the 64-bit server
using either the TCP/IP sockets or the IPC stream pipe protocols.
The protocol used for supporting MaxConnect on this platform is
"onsocimc".
8. No Age (Disable Priority Aging)
The no aging feature that disables priority aging of CPU virtual processors
by the operating system can be activated by setting the noage option of the
VPCLASS configuration parameter for the CPU virtual processors. For example,
the following ONCONFIG entry specifies that there are 8 CPU VPs, each
without aging:
VPCLASS cpu,num=8,noage
When NOAGE is activated, all oninit processes will run at priority 60
with fixed priority round robin type scheduling.
Note: The NOAGE configuration parameter is deprecated; it is replaced by
the VPCLASS configuration parameter with the noage option.
To override the default priority value for CPU VP class, set the
environment variable INFX_CPUVP_PRIORITY to the desired priority,
within limits (50 to 90) before starting the server.
The server checks and sets the CPU VP process to the defined priority
if the defined value is within the above range.
9. OnLine Backup and Restore (ON-Bar)
Some of the functions invoked by ON-Bar are in a shared library
supplied by third party storage management vendors. For ON-Bar to
access these functions, set the BAR_BSALIB_PATH parameter in
$INFORMIXDIR/etc/$ONCONFIG to the full pathname of the library.
Using $INFORMIXDIR/lib/ibsad001_64.so as a symbolic link to the
library is deprecated and shall be discontinued.
Informix Interface for Tivoli Storage Manager (TSM) is supported on this
platform. The interface is built with TSM API Client version 5.3.2.
10. OnSNMP
The SNMP agent for OnSNMP is based on SNMP Research (SNMPR).
11. Optical
The name of the IBM Informix shared library for Optical on AIX is
"iosm11a_64.so". This library must be located in $INFORMIXDIR/lib
(or must have a link provided in $INFORMIXDIR/lib). Refer to the
"Optical Subsystem Guide" for more information about enabling optical
functionality.
12. Pluggable Authentication Module (PAM)
PAM functionality is supported on AIX operating system. The PAM is
dependent on the libpam.so library supplied by the Operating System
vendor.
Use of PAM can be enabled or disabled by the system administrator. By
default, IBM Informix server will use the traditional authentication
mechanism in order to avoid widespread changes required by the users.
The PAM service identifies the PAM module. This PAM module typically
resides in /usr/lib/security and its parameters are listed in
/etc/pam.conf.
13. Processor Affinity
The processor affinity feature, that allows the pinning of a CPU VP
processor to a physical processor in a multi-cpu configuration, is
supported on this platform.
14. Secure Sockets Layer
IBM Informix Database Server uses the libraries and utilities provided by
the IBM Global Security Kit (GSKit) for Secure Sockets Layer (SSL)
communication.
a. Before uninstalling GSKit, verify that it is not needed on your
system. It is possible that software other than Informix Database
Server requires GSKit. Uninstalling entails removing GSKit
packages as follows:
To remove package, as root user run the following
installp -u -g -V2 GSKit8.gskcrypt64.ppc.rte GSKit8.gskssl64.ppc.rte
b. If you want to restore Secure Sockets Layer capability after you
have uninstalled GSKit, see the readme file in $INFORMIXDIR/gskit
for how to install GSKit.
15. Shared Memory Residency
Shared Memory Residency is supported. This feature can be enabled by
setting ONCONFIG parameter RESIDENT to a non-zero value.
Please read the KAIO section in this file if you are using
Shared Memory Residency together with KAIO or DIRECT_IO, as this
combination may cause problems.
See APAR IC76872 for further information.
16. Simple Password Communications Support Module
The name of the IBM Informix shared library for Simple Password CSM on
on AIX is libixspw.so.
17. Single Sign On (SSO)
This feature requires AIX system library libgssapi_krb5 to be installed
on the system. This library is included in krb5.toolkit.adt (Network
Authentication Service App. Dev. Toolkit).
Features not Supported
======================
1. Concurrent I/O on Shared Disk Secondary Servers.
Migrating to this 64-bit Version
================================
1. To migrate to this 64-bit version from previous versions of the server
(64-bit as well as 32-bit), refer to the migration process described in
the IBM Informix Migration Guide, Version 12.10.
To revert from this 64-bit version to all previous 64-bit versions refer
to the IBM Informix Migration Guide, Version 12.10.
To revert from 64-bit 12.10 (this server) to 32-bit 11.50, 11.10, 10.00,
or 9.40:
------------------------------------------------------------------------
a. Disconnect all users from this server. The 64-bit server should be
in online mode.
b. Run the following command as user informix or DBA:
$INFORMIXDIR/etc/conv/update.sh -32
c. Revert to 9.40, 10.00, 11.10 or 11.50 32-bit by following the steps
described in the IBM Informix Migration Guide, Version 12.10, in the
section "Reverting from Informix Version 12.10".
2. All UDRs and Database Extensions that are built in 32-bit mode must be
re-compiled in 64-bit mode to work with the 64-bit server. If you have
any UDRs that were developed on 32-bit, make sure that the proper size
and alignment of the data structures are used for the UDRs to work
correctly on 64-bit after re-compilation in 64-bit mode.
3. All UDRs and Database Extensions that are built in 64-bit on AIX 4.3.3 or
lower must be recompiled on AIX 5L 5.3 or higher. 64-bit binaries built
on AIX 4.3.3 or lower are not compatible on AIX 5.3 or higher.
Known Defects in this release
=============================
For information about known defects in this release, see:
http://www.ibm.com/support/docview.wss?uid=swg27038365
Defects Fixed in this release
=============================
For information about defects fixed in this release, see:
http://www.ibm.com/support/docview.wss?uid=swg27038362
(C) Copyright IBM Corp. 2002, 2013