SOLARIS 64


                      =================================
                            MACHINE SPECIFIC NOTES
                                    FOR
                 HCL Informix Database Server 14.10.FC10 PRODUCT RELEASE
                               ON SOLARIS 64bit
                               DATE: 13 Mar 2023
                      =================================

OS Information:Built on Solaris 11.3.

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

1.  This product was built on Solaris 11.3 using the following compilers
    from Oracle Developer Studio 12.6:

       Sun C 5.15 SunOS_sparc 2017/05/30
       Sun C++ 5.15 SunOS_sparc 2017/05/30

2.  Solaris Support Repository Updates (SRUs) requirement.

       Solaris 11.3: SRU 34 or greater

3.  HCL Informix Database Server is supported to work with and without Zones
    on Solaris 11. Read the following document for more information:

    ftp://ftp.software.ibm.com/software/data/informix/ids/IDS-SunSPARC-reqs.pdf

4.  The UNIX graphical tools provided with this release require 64-bit
    X Windows System X11R6 and Motif 2.3.4 or later runtime libraries.

    If these tools cannot find the location of the X and Motif shared
    libraries, set the environment variable LD_LIBRARY_PATH to include
    these locations: /usr/openwin/lib/sparcv9 and /usr/dt/lib/sparcv9.

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

6.  HCL 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 GSKit8 is not
          installed, Informix server will install GSKit in /opt/ibm/gsk8_64
          directory on your machine.

       b. The GSKit installation directory must have 35 MB of free disk space.

7.  To install the product as root, a root login user must be present on the 
    system. The Root Role feature provided by Solaris is not supported.

8.  The Informix product installer may fail to start correctly. When it
    aborts the following two messages are displayed:

       Installer User Interface Mode Not Supported
       Unable to load and to prepare the installer in console or silent mode. 

    This can happen due to a known problem in the Java Virtual Machine that
    is internal to the installer. This problem is known as 
    "JDK-8188030 : AWT java apps fail to start when some minimal fonts are
    present".
    It may appear when only minimal fonts of the CFF format are installed on
    the machine. 

    On a SunOS system with Sparc 64-bit architecture, this problem can be
    worked around by installing an additional font with a format different
    than CFF.

    An alternative is to remove the installed fonts of the CFF format. 
    On SunOS systems with Sparc 64-bit architecture the Informix product 
    installer is known to start and work correctly when no fonts are 
    installed. In this case the system utility command "fc-match -sv" reports
    the message "No fonts installed on the system".

9.  A feature which significantly reduces the time required to extend or create
    a chunk in a cooked file, exposed a defect in Solaris¿ 11.3 which may result
    in creation of corrupted file. This defect can occur if feature is enabled
    for Informix along with direct I/O and the file system supports direct I/O.
    One example of such file system is UFS. The issue does not affect ZFS or raw
    devices.

    The Solaris¿ defect number for this issue is 31306486. It has been fixed in
    Solaris 11.4 SRU27, but there is no fix for Solaris 11.3

    When using Informix in affected environment - Solaris 11.4 prior to SRU27
    or Solaris 11.3 and having dbspaces / chunks in a cooked files with a file
    system which supports direct I/O make sure both direct I/O and the feature
    are not enabled at the same time.

    The DIRECT_IO config parameter must be set to 0 (if needed) before the IDS
    instance is started or restarted, however direct I/O may still be used if
    the file system is mounted with the "forcedirectio" option.

    If use of direct I/O is desired in environment affected by Solaris¿ defect,
    then the feature can be disabled by setting USE_FALLOCATE to 0 as follows:

    onmode -wf USE_FALLOCATE=0

Check the following web site for the latest Solaris system requirements
for HCL Informix Database Server:

    http://www-01.ibm.com/support/docview.wss?rs=630&uid=swg27013343


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

1.  Kernel Parameters

    On Solaris 11.3, all System V IPC facilities are either automatically
    configured or can be controlled by resource controls.

    The resource controls have the following default values on Solaris 11.3:

           process.max-sem-nsems    512
           project.max-sem-ids      128
           project.max-shm-memory   1/4 of physical memory
           project.max-shm-ids      128

    Check project.max-shm-memory on your system, IBM recommend the value
    of 4398046511104 for the HCL Informix Database Server.

    On systems that have zones enabled, zone-wide resource controls are
    specified in the zone configuration.

    Refer to the rctladm(1m) man page for more information about available
    resource controls.

    Examples:

    1) To display the current value of project.max-shm-memory set to the
       project and system wide, where Informix server is running under the
       default project, run this command:

       # prctl -n project.max-shm-memory -i project default

    2) To display the values of all the resource controls for a specific
       Informix server process, run this command:

       # prctl <oninit pid>

    3) To set the value of project.max-shm-memory for the project default
       to 4 TB without restarting the system, run this command:

       # prctl -n project.max-shm-memory -r -v 4tb -i project default

    4) To perform the same action as in example 3, but instead use
       the projmod command to modify the attribute value for
       project.max-shm-memory in /etc/project the local source of
       project information file, run this command:

       # projmod -a -K 'project.max-shm-memory=(priv,4TB,deny)' default

2.  Location of Shared Memory

    The default value for SHMBASE configuration parameter in ONCONFIG is

        SHMBASE 0x10A000000L

    If the Informix server uses large pages, set the SHMBASE configuration
    parameter to align to the page size. For example:

        SHMBASE 0x110000000L            # aligned to 256MB

    or

        SHMBASE 0x180000000L            # aligned to 2GB

3.  Environment Variables

    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 Informix Database Server to perform recursive
    database tasks (for example, cascading deletes).


Feature Notes  (alphabetized by feature)
=============

1.  High Performance Loader

    User-defined conversion routines for the High Performance Loader must be
    provided in a dynamic, shared library called ipldd11a.so. This shared
    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 the file pointed to by PLCONFIG environment variable. For
    more details see the "High-Performance Loader User's Guide".

    To create a 64-bit shared library, the flags "-m64" can be used
    to convey to the compiler that a 64-bit object is to be generated.

    Onpload will use shared memory during its execution. It will allocate
    memory beyond the address for the server, leaving room for server shared
    memory expansion.

2.  IPv6 Support

    The Informix 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 service switch files /etc/nsswitch.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 Informix 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.  J/Foundation (Java in the Server)

    The IBM Runtime Environment, Java(TM) Technology Edition, Version 8.0
    release is installed in $INFORMIXDIR/extend/krakatoa/jre and should be
    used with the J/Foundation component.

    A Java user-defined routine (UDR) runs in a Java virtual processor. Use
    the VPCLASS configuration parameter to specify the number of virtual
    processors for the server. You configure Java virtual processors in
    the "Java configuration parameters" section of the onconfig configuration
    file. The default onconfig.std file is in the $INFORMIXDIR/etc directory.

    To develop Java UDRs for the server on this platform, use Java Platform,
    Standard Edition Development Kit (JDK) 8 or an earlier version according
    to Java compatibility guidelines. That kit can be downloaded from
    https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

4.  Large Memory Addressability (LMA)

    Informix Dynamic Server 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 536870912.

        - 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 (2^40)/2 MB. 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 536870912. 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 4398046511104 bytes.

        - The value for SHMADD is 4294967296 kilobytes.

    Refer to HCL Informix Administrator's Reference manual for the
    information about the related configuration parameters setting.

5.  Network Protocols

    The following protocols and interfaces are supported on this platform:

      TLI using TCP/IP
      SOCKETS using TCP/IP
      IPC using stream pipe

      To use TLI with TCP/IP:

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

          b. To enable an IBM Data Server Client to connect to the database
             server, the NETTYPE entry in the ONCONFIG file and the protocol
             value in the sqlhosts file entry must contain "drtlitcp"

      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 an IBM 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.

      When using either TLI or SOCKETS, set the "connections" field in
      the ONCONFIG NETTYPE parameter and the kernel driver ndd parameter
      "tcp_conn_req_max_q" to the maximum number of expected concurrent
      connections.

      If the "tcp_conn_req_max_q" is set too low, you will see a client
      error with sqlcode = -908 and isamcode = 13. If the NETTYPE
      "connections" field is set too low, you will see a server
      listener-thread error with err = -25571.

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

    Remote 32-bit or 64-bit applications and tools (example: ESQL/C, ISQL)
    can only connect to the HCL 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 or the IPC stream pipe protocols.

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

    The protocol for supporting Informix MaxConnect on this platform
    is "ontliimc".

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

    This shared library must be compiled in 64-bit mode.

    Using $INFORMIXDIR/lib/ibsad001.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 version 5.3.2.

7.  OnSNMP

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

8. Pluggable Authentication Module (PAM)

   PAM functionality is supported on Solaris operating systems. PAM requires
   the libpam.so library that is supplied by the Operating System vendor.

   Use of PAM can be enabled or disabled by the system administrator. By
   default, the Informix server will use the traditional authentication
   mechanism to avoid changes for the users.

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

9. Secure Sockets Layer

    HCL 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 the GSKit
          packages with the pkgrm command-line tool

          As root user run the pkgrm command to remove each package as
          needed. For example, the following command removes the GSKit
          SSL and GSKit Crypt packages:
          pkgrm gsk8ssl32 gsk8cry32

       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.


Features not supported
======================

1.  Rolling upgrades to IDS version 14.10.xC2 and 14.10.xC6 are not supported.

    Rolling upgrades are not supported in IDS version 14.10.xC2 and 14.10.xC6.
    Migration to these versions from a previous version require changes to
    disk structures, and the conversion process is incompatible with a rolling
    upgrade. When upgrading HDR and RSS secondary servers to version 14.10.xC2
    or 14.10.xC6, you must follow the steps listed in the on-line documentation
    under "Migrating an offline cluster to a new major version."

2.  Support for Communication Support Module (CSM) is removed starting with
    Informix Server 14.10.xC9. You should use Secure Sockets Layer 
    (SSL)/Transport Layer Security (TLS) instead.

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