Machine Notes for AIX


                      =================================
                            MACHINE SPECIFIC NOTES
                                    FOR
             HCL OneDB Database Server 1.0.0.1 PRODUCT RELEASE
                               ON AIX 7.2 64bit
                               
                      =================================

OS Information : Built on AIX 7.2 Technology.

System Requirements
===================

1.  This product was built on AIX 7.2 Technology using the following
    compilers:

    IBM XL C/C++ for AIX, V11.1 (5724-X13)
    XL C/C++ Runtime      13.1.3

2.  AIX patch requirement:

        TL2 (7200-02-02-1810)

3.  The UNIX graphical tools provided with this release require X Window
    system X11R6 and Motif 2.3.4 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.

System Configuration
====================

1.  Location of Shared Memory

    The ONCONFIG variable SHMBASE should be set to the following:

 	SHMBASE 0x700000010000000

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 HCL OneDB 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 HCL
       OneDB 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

    The OneDB database server supports Internet Protocol Version 6 (128 Bit
    Internet Addresses) as well as IPv4 (32 Bit Addresses).

    In order for the machine name that is specified in the SQLHOSTS file to
    resolve to the correct IP address, the name services files on the operating
    system must be configured correctly. If the machine has an IPv6 address
    configured, and the listener thread is bound to an IPv6 address, then the
    name resolution file /etc/netsvc.conf must be configured to fetch an IPv6
    address. Also any local machine settings must be set correctly in the
    /etc/hosts file.

    For compatibility with earlier version of OneDB client and server
    products, assign each host name 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 the IPv4 address, then an explicit IPv4 address needs to be put in the
    host name field of SQLHOSTS file. Client applications should also use the
    same setting.


3.  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 OneDB.
    If you allocate a lot of resident memory segments to OneDB and
    OneDB 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 OneDB 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, OneDB server
    shared memory segments as resident. Set the RESIDENT configuration
    parameter in the onconfig file to 1 or 0.

4.  Large Memory Addressability (LMA)

    HCL OneDB 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.

5.  Network Protocols

    The following protocols and interfaces are supported on this platform:

       SOCKETS using TCP/IP
       IPC using stream pipe (implemented using UNIX Domain Sockets)

    To use SOCKETS with TCP/IP:

       a. The NETTYPE entry in the ONCONFIG file and the nettype field in
          the sqlhosts file entry must contain "onsoctcp".

       b. To enable HCL Data Server Client to connect to the database
          Server, the NETTYPE entry in the ONCONFIG file and the protocal
          value in the sqlhosts file entry must contain "drsoctcp"

          If a CLI or JCC client wants to connect to the database server
          through DRDA while supporting SQLI connections, you must add a
          DBSERVERALIASES entry to the ONCONFIG file that corresponds to
          the sqlhosts file entry.

    To use IPC (interprocess communication) with stream pipe:

        a.  The NETTYPE entry 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. To disable
    fast poll, set the FASTPOLL parameter to 0 in the ONCONFIG file. 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 HCL OneDB 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.

6.  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 the noage option is used, all oninit processes will run at priority
    60 with fixed priority round robin type scheduling.

    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.

7.  OnLine Backup and Restore (ON-Bar)

    ON-Bar uses the XBSA interface. 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.

    OneDB Interface for Tivoli Storage Manager (TSM) is supported on this
    platform. The interface is built with TSM API Client version 5.3.2.

8. OnSNMP

    The SNMP agent for OnSNMP is based on SNMP Research (SNMPR).

9. 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, HCL OneDB server will use the traditional authentication
    mechanism in order to avoid widespread changes required by the users.

    The PAM modules typically resides in /usr/lib/security/64. The PAM
    services are defined in /etc/pam.conf.

10. Processor Affinity

    The processor affinity feature, which allows the pinning of a CPU
    virtual processor to a physical processor in a multi-CPU configuration,
    is supported on this platform.

11. 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.

12. Simple Password Communications Support Module

    The name of the HCL OneDB shared library for Simple Password CSM on
    on AIX is libixspw.so.

13. 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.

(C) Copyright IBM Corp. 2002, 2017
(C) Copyright HCL Technologies Ltd. 2017, 2020. All Rights Reserved.