IBM Informix

Release Notes for IBM Informix Dynamic Server Developer Edition for UNIX, Linux, and Mac OS X

11.50.xC6DE, December 2009

Contents

Release Notes
Getting Started with IBM Informix Dynamic Server Developer Edition
Technical Support Online Resources
IDS 11 Product Site
International Informix Users Group
IBM Informix Dynamic Server Developer Edition
Limitations on Persistent Connections
What's New in Version 11.50.xC6DE of IBM Informix Dynamic Server
External Backups on RS Secondary Servers
Dynamically Start, Stop, or Restart Listen Threads
SQL Administration API Portal: Arguments by Functional Categories
Connection Manager Proxy Support
View Event Alarms in the Scheduler
Improved Transaction Information
Enhancements to the OpenAdmin Tool for IDS
Enhancements to the Schema Manager plug-in for the OpenAdmin Tool for IDS
Enhancements to Merging Information into a Target Table with the MERGE Statement
An ALTER FRAGMENT Operation Can Now Force Out Transactions to Get Exclusive Access to Tables
RETAINUPDATELOCKS Environment Option
New Column Size Field Format for CDC Records
Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS
Enable or Disable Enterprise Replication Event Alarms
XA Transaction Support for Updatable Secondary Servers in a High-availability Cluster
Deploying Instances with the Deployment Utility
Installing IDS by Using an RPM package (Linux)
Migrating or Upgrading High-availability Clusters
Upgrading to a New Server or Fix pack
Quickly Reverting to Your Source Server After a Failed Upgrade
Light Scans on Tables
Process Multiple Basic Text Search Queries Simultaneously
Load and Unload Data with External Tables
What's New in Version 11.50.xC5DE of IBM Informix Dynamic Server
Configuring RS Secondary Server Latency for Disaster Recovery
Forcing the Database Server to Shut Down
Enhanced Support for Multibyte Character Strings
New default for the INFORMIXTERM environment variable for terminal set up on UNIX
onconfig Portal: Configuration Parameters Listed by Functional Categories
onstat Portal: onstat Commands Listed by Functional Categories
Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS
Enterprise Replication Stops if Memory Allocation Fails
Notification of an Incorrect Log Position When Enterprise Replication Restarts
Workaround: Reclaiming Space from Enterprise Replication Paging Smart Large Objects
Improving the Performance of Consistency Checking with an Index
Specifying the Range of Data Sync Threads to Apply Replicated Transactions
Loading Data into a Warehouse with the MERGE Statement
Retrieving Data by Using Hierarchical Queries
What's New in Version 11.50.xC4DE of IBM Informix Dynamic Server
Improved Options for Specifying Processor Affinity
Disable IPv6 Support
Enhancements to the OpenAdmin Tool for IDS
Generating a Customized Database Server Configuration File
Generate ATS and RIS Files in XML Format for Custom Repair Scripts
Prevent Upserts During Conflict Resolution
New Event Alarms for Enterprise Replication
Monitor the Progress of a Consistency Check or a Direct Synchronization
Specify the Duration of a Consistency Check
Schedule Synchronization or Consistency Checking Operations
Improve Consistency Checking Performance
Improve the Performance of Checking or Synchronizing Replicate Sets (UNIX)
Role separation for Enterprise Replication (UNIX)
Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS
Enable Concurrent I/O to Improve Performance on AIX Operating Systems
IFX_LARGE_PAGES Environment Variable (AIX, Solaris)
DataBlade Module Registration through SQL
Control the Results of a Fuzzy Search with the Basic Text Search DataBlade Module
Map Characters for Indexing with the Basic Text Search DataBlade Module
Default Boolean Operator in Basic Text Search Queries
Storage for Temporary Basic Text Search Files
Track Basic Text Search Query Trends
Fragment bts Indexes by Expressions
Monitor Change Data Capture Sessions
View Change Data Capture Error Message Text
Automatic Check for Installation Path Security (UNIX, Linux, Mac OS X)
Utility to Enhance the Security of the Dynamic Server Installation Path (UNIX, Linux, Mac OS X)
What's New in Version 11.50.xC3DE of IBM Informix Dynamic Server
Performing Unattended Installations on Mac OS X
Setting up Source Names on Mac OS X
Using SQL Administration API to Dynamically Update Configuration Parameters
Dynamically Updating the LTXEHWM, LTXHWM, and DYNAMIC_LOGS Configuration Parameters
Dynamically Updating Enterprise Replication Configuration Parameters in the ONCONFIG File
Improved Consistency Reporting after Enterprise Replication Repair Operations
Administering and Monitoring Enterprise Replication with SQL Administration API
Improved SQL Tracing with the SQL Administration API
Changing the Size of the First Extent of a Table
Rolling Back SQL Transactions to a Savepoint
Capturing Transactional Data with the Change Data Capture API
Basic Text Search DataBlade Module Supports High-Availability Clusters
Querying XML Attributes with the Basic Text DataBlade Module
Setting the Frequency of Error Checking for Smart Large Object Transmission
What's New in Version 11.50.xC2DE of IBM Informix Dynamic Server
Reconfiguring Connection Manager while It's Running
Enhanced Dynamic Server Installation Application on Mac OS X
Improving the Performance of an Enterprise Replication Synchronization Operation
Obtaining IDS Version Information From the cdr Utility
Monitoring Enterprise Replication with New SMI Tables
Monitoring the Whole Enterprise Replication Domain
Preventing ATS or RIS File Generation
New Default Value for the EXPLAIN_STAT Configuration Parameter
Default values for Java configuration parameters are updated in the onconfig.std file
Limiting the Number of Sessions That Can Connect to Dynamic Server
New Format for Backup Filters
Enhancements to the OpenAdmin Tool for IDS
Controlling I/O of B-Tree Indexes with Compression Levels
Subquery Support in UPDATE and DELETE Statements
Longer Return Strings from String Manipulation Functions
Server-Specific Audit Configuration File Functionality
What's New in Version 11.50.xC1DE of IBM Informix Dynamic Server
SQL Administration API Commands to Configure High-Availability Clusters Added
Enhanced Connection Management for High-Availability Clusters
Update Data Support on High-Availability Cluster Secondary Servers
New Options to Troubleshoot High-Availability Clusters
Support for Transient Types on High-Availability Cluster Secondary Servers
Enhanced Configuration Options for Installation
Improved onconfig.std and New Default Values for Configuration Parameters
Enhancements to the OpenAdmin Tool for IDS
Enhanced Data Server Client Session Information
Enhanced Shared-Memory Dump File Size Control
Enhanced Startup Script Customization
New Options for Configuring Storage Space Monitoring
Updating Table Statistics with AUS Scheduler Tasks
Control External Directives for a Session
Improved Query Performance for Large Integers and Serial Data
Support for Obtaining Explain Output in XML Format Added
DRDA Protocol Configuration During Installation Added
SQL Expressions with the IS [NOT] NULL Predicate
Determine Data Currency with a Version Column
Distributed Relational Database Architecture (DRDA) Enhancements
J/Foundation Upgraded to JRE 5.0
Improvements to the Basic Text Search DataBlade Module
New Support for Dynamic SQL Statements in SPL Routines
New Support for Extensible Stylesheet Language Transformation (XSLT)
Single Sign-on Support Added
Support for Encrypting Data by Using Secure Sockets Layer (SSL) Communications Added
Supported Releases
Additional Information for the Spatial DataBlade Module
Standard Cryptographic Library
New Keywords
Informix Documentation
Information Center for Product Documentation
How to Provide Documentation Feedback
Known Problems
Additional Restriction on using XA Transactions with High Availability Clusters
Installation Issues
Installing Multiple Editions of IDS on the Same Computer
A Terminal Emulator Cannot be Launched during Installation on Mac OS X
Do Not Install Dynamic Server and INFORMIX-SE in the Same Directory
Installation on Linux x86 RHEL 4 or Higher
Spurious Error When Invoking the JAR File Directly
Security Issues
PAM Challenge Mode is not Supported with SSL
LBAC and Server Utilities
LBAC and Enterprise Replication
Secure Installation Path
Alarm Event for Audit Log File Change
Utility Issues
ISA No Longer Provided on IDS Installation Media
Administration Tools
Recommendations for Using ON-Monitor
ON-Monitor and $MEDIADIR
The onperf Utility is Not Accessibility Compliant
High Availability and Enterprise Replication Issues
Workaround: Reclaiming Space from Enterprise Replication Paging Smart Large Objects
Adding a Dbspace On a Primary Server while SDS Servers are Online
Inaccurate Server Version Identification for Enterprise Replication
Running Session Configuration Routines on Secondary Servers
Enterprise Replication and Connection Security
Performing Repair Jobs with ER and HDR
Enterprise Replication Cannot be Combined with LBAC
Caveats
Server Library Names
Using Select Triggers with dbexport or dbschema
Limitations on Remote Views
Limitation on Using UDRs in Distributed Transactions
Case-Sensitive Name Space
Limit on Logical Log File Size
INSTEAD OF Triggers Limitations
Large File Support Limitation
Updating Statistics for Specific Routines
Change in Parameter to ALARMPROGRAM Script for Event Alarm 23
Upgrading to IBM Informix Dynamic Server, Version 11.50.xC6
Upgrading to Informix Dynamic Server 11.50.xC6
Upgrade to Snow Leopard (Mac OS X 10.6) Removes UID and GID of Existing IBM Informix Dynamic Server Installations
Special Considerations when Upgrading from Versions of IDS Older Than 9.40
Save System Catalog Information
Migrating from 32-bit to 64-bit with Collection Types that use the SMALLINT Data Type
Limits in IBM Informix Dynamic Server
Notices
Trademarks

Release Notes

These release notes contain additional information not found in the product manuals that are included with the product.

Getting Started with IBM Informix Dynamic Server Developer Edition

To help you prepare to install or upgrade your IBM® Informix® Dynamic Server product, follow these steps:

  1. See the README file in the top-level directory of the DVD or downloaded product for the latest installation information for the IBM Informix Dynamic Server Developer Edition.
  2. Read this document.

    You should review these notes for critical information.

  3. Read the machine notes.

    The machine notes contain important information about platform-specific issues. Read the machine notes before installation.

  4. Read the GSKit readme.

    The IBM Global Security Kit (GSKit) is installed automatically with IBM Informix Dynamic Server. Read the GSKit readme for more information.

  5. Read the IBM Informix Dynamic Server Getting Started Guide.

    This manual provides an overview and summarizes important features of IBM Informix Dynamic Server. It provides descriptions of new features by release. It also provides a roadmap to help you use the documentation set.

  6. If you are migrating from a previous version of IDS, read the IBM Informix Migration Guide.
  7. Read the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X, available in PDF format (Adobe® Reader recommended) in the /doc directory of the product media and in the Information Center for IDS 11.50.xC6 at this URL:

    http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp

  8. Read the documentation notes for late changes to documentation.

All defects fixed in the version 11.10.xC3, 10.00.xC10, 9.40.xC9, and 7.31.UD10 interim releases are corrected in this release.

Important: The C++ runtime system is necessary to use IBM Informix Dynamic Server 9.40.xC1 or later. See the IDS machine notes for the C++ requirement.

Technical Support Online Resources

Technical support entitlement for Developer or trial editions of IDS might differ from what is documented here.

You can find the answers to many of your questions on the IBM Informix Dynamic Server Support Web site:

http://www.ibm.com/software/data/informix/ids/support/

The IBM Informix Support Web site contains the following areas:

IDS 11 Product Site

Visit the IDS 11 Web site to:

Access the IDS 11 Launch Site at:

http://www.ibm.com/informix/ids

International Informix Users Group

Founded in 1995, International Informix Users Group (IIUG) is the most influential user group representing the users of Informix products. Thousands of IIUG members around the world network with each other and share knowledge and other resources. Visit the IIUG Web site (http://www.iiug.org) which, amongst other things, supports a Software Archive (http://www.iiug.org/software). The Software Archive contains the source code for many utilities that might be of interest to you as you use IBM Informix Dynamic Server. Note, however, that these utilities are not supported by IBM.

IIUG membership is free.

IBM Informix Dynamic Server Developer Edition

These release notes describe Developer Edition.

Some of the functionality described in IDS documentation might not be available for Developer Edition. For details on the differences between editions, see the following Web site:

http://www.ibm.com/software/data/informix/ids/ids-ed-choice/

The license agreement has the specific restrictions for each edition. To view a license for a particular edition, search for "Informix Dynamic Server" on this Web site:

http://www.ibm.com/software/sla/sladb.nsf

Limitations on Persistent Connections

If your application creates multiple connections to IDS, or uses middleware that creates multiple persistent connections to the data server, make sure that the number of connections does not exceed the Developer Edition connection limit. When you deploy your application on another edition of IDS without the connection limit, remember to increase the number of persistent connections to match the expected production workload.

Examples of middleware that create multiple persistent connections to the data server are connection pools, and PHP settings such as ifx.max_persistent or odbc.max_persistent in the php.ini file.

What's New in Version 11.50.xC6DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC6DE contains the following new functionality:

External Backups on RS Secondary Servers

To reduce the processing load on the primary server in a high-availability cluster you can create an external backup on an RS secondary server instead of on the primary server. The RS secondary server must not contain any non-logged objects. You can restore the backup on any server in the cluster.

This feature is documented in the IBM Informix Dynamic Server Administrator's Reference, the IBM Informix Backup and Restore Guide, and the IBM Informix Dynamic Server Administrator's Guide.

Dynamically Start, Stop, or Restart Listen Threads

You can now dynamically start, stop, or restart (stop and start) an existing listen thread for a SOCTCP or TLITCP network protocol without interrupting existing connections. Use the new onmode -P commands or the new SQL administration API admin() or task() functions.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference and the IBM Informix Dynamic Server Administrator's Guide.

SQL Administration API Portal: Arguments by Functional Categories

You can view admin() and task() function arguments, listed by category, and follow the links to information about the arguments.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference.

Connection Manager Proxy Support

Connection Manager can now be configured as a proxy server when clients connect to Informix data servers from outside a firewall. You can use proxy names when you configure high-availability cluster connections using the Connection Manager.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference and the IBM Informix Dynamic Server Administrator's Guide.

View Event Alarms in the Scheduler

You can see event alarms in the ph_alerts table in the sysadmin database. You can query the ph_alert table on a local or remote server to view the recent event alarms for that server.

This feature is documented in the IBM Informix Dynamic Server Administrator's Reference.

Improved Transaction Information

The onstat -x utility output now provides an estimated rollback time for transactions that are rolling back.

The onstat -x utility is documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhancements to the OpenAdmin Tool for IDS

The OpenAdmin Tool (OAT) Version 2.27 has the following enhancements:

See the OpenAdmin Tool help for more information.

Enhancements to the Schema Manager plug-in for the OpenAdmin Tool for IDS

The Schema Manager plug-in Version 1.2 has the following enhancements:

See the Schema Manager plug-in for OAT help, for more information.

Enhancements to Merging Information into a Target Table with the MERGE Statement

You can remove rows from a target table when you are merging information into it from a source table by using the Delete clause in the MERGE statement. You can combine the Delete clause and the Insert clause to add new rows to the target table if they do not match the join condition, and delete the rows that do match the join condition.

You can use an external table, created by the CREATE EXTERNAL TABLE statement, as a source table in the MERGE statement. You can use a table protected by LBAC as a source or target table in a MERGE statement.

You can include savepoints in a transaction to preserve the effects of the MERGE statement after a partial rollback.

You can specify a more selective join predicate because you no longer need to include an equality condition.

The MERGE statement is documented in the IBM Informix Guide to SQL: Syntax and the IBM Informix Guide to SQL: Tutorial.

An ALTER FRAGMENT Operation Can Now Force Out Transactions to Get Exclusive Access to Tables

The ALTER FRAGMENT operation requires exclusive access and exclusive locks on all the tables involved in the operation. Now a DBA can force out other transactions that opened or locked the tables involved in an ALTER FRAGMENT ON TABLE operation. When the FORCE_DDL_EXEC environment option is enabled, the ALTER FRAGMENT ON TABLE operation waits to get exclusive access to the table, as specified by the lock mode wait value. If necessary, the server rolls back the transactions that have access or locks on the tables involved in the operation until the timeout value of the FORCE_DDL_EXEC environment option is reached.

The feature is documented in the IBM Informix Guide to SQL: Syntax.

RETAINUPDATELOCKS Environment Option

The RETAINUPDATELOCKS environment option can improve concurrency in Dynamic SQL applications that include the SELECT . . . FOR UPDATE statement. When your session uses the Committed Read, Dirty Read, or Cursor Stability isolation levels, you can set this option to instruct the database server to postpone releasing update locks until a transaction ends. Retaining update locks prevents users in other sessions from locking rows that you have not yet updated. By default the setting persists for the current session unless you reset it or you change the isolation level to one that does not support the RETAINUPDATELOCKS environment option.

The feature is documented in the IBM Informix Guide to SQL: Syntax.

New Column Size Field Format for CDC Records

The CDC_REC_DELETE, CDC_REC_INSERT, CDC_REC_UPDAFT, and CDC_REC_UPDBEF records have fields listing the size of each variable-length column in the row, if any. The column size fields in these CDC records are now 4 bytes long and in network, big-endian, order. Previously, the column size fields were the size of the operating system platform's integer byte length, in native byte order. To use the new column size field format, when you run the cdc_opensess() function, specify 1 as the value for both the major_version and minor_version arguments.

This feature is documented in the IBM Informix Change Data Capture Programmer's Guide.

Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS

The Enterprise Replication (ER) plug-in Version 2.4 has the following enhancements:

See the Enterprise Replication plug-in for OAT help, for more information.

Enable or Disable Enterprise Replication Event Alarms

You can control which Enterprise Replication event alarms are enabled by setting the CDR_ALARMS environment variable with the CDR_ENV configuration parameter. By default, most Enterprise Replication event alarms are enabled. The state change events 49, and 51 through 70, which indicate that a cdr command was run, are disabled by default.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

XA Transaction Support for Updatable Secondary Servers in a High-availability Cluster

Client applications that connect to updatable secondaries in a high-availability cluster can use XA transactions. Previously, only client applications connected to primary servers could use XA transactions.

This feature is documented in the IBM Informix Dynamic Server Administrator's Reference and the IBM Informix Migration Guide.

Deploying Instances with the Deployment Utility

You can use the deployment utility (ifxdeploy) to rapidly deploy a configured IDS instance to multiple computers, avoiding the need to manually configure instances on each computer and wait for each instance to initialize. By setting configuration parameters, essential environment variables, and SQLHOST connectivity information in a deployment utility configuration file (ifxdeploy.conf) template, you can reuse the configuration file to deploy the instance multiple times. If you are deploying an instance with existing data, you can use the -relocate option to store the data in a different location from where it was originally stored. You can call the utility programmatically or from a script as part of an application installation that embeds IDS. The utility automatically extracts tar files that are compressed with Gzip.

This feature is documented in the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

Installing IDS by Using an RPM package (Linux)

You can install IBM Informix products by using RPM Package Manager (RPM) on some Linux® operating systems (see the Machine Notes for the list of operating systems). RPM simplifies installation by installing the product from a single package, and tracks the packages that are installed on a system. By default, this method installs IDS in the /opt/IBM/informix directory.

This information is documented in the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

Migrating or Upgrading High-availability Clusters

Information was added to the Migration Guide to help you coordinate the migration of all servers in a high-availability cluster. If you use high-availability clusters, refer to this information when you upgrade to a new PID or fix pack, migrate to a new version of IDS, or revert to the previous version of IDS if necessary.

Upgrading to a New Server or Fix pack

To upgrade to a new IDS version or fix pack, follow the procedures that are described in the IBM Informix Migration Guide. Likewise, to revert to the prior version of the server after successfully upgrading, follow the reversion procedures that are described in the IBM Informix Migration Guide.

Quickly Reverting to Your Source Server After a Failed Upgrade

If an upgrade to a new IDS version or fix pack fails, use the new onrestorept utility to restore the server to a consistent, pre-upgrade state. You can undo changes made during the upgrade in minutes (and in some cases, in seconds). Previously, if a fix pack upgrade failed, you had to restore the database by using a level-0 archive.

The new CONVERSION_GUARD and RESTORE_POINT_DIR configuration parameters specify information that the onrestorept utility can use if an upgrade fails.

The onrestorept utility is documented in the IBM Informix Migration Guide. and the new configuration parameters are documented in the IBM Informix Dynamic Server Administrator's Reference.

Light Scans on Tables

You can now enable IDS to perform light scans on compressed tables, tables with rows that are larger than a page, and tables with any data, including VARCHAR, LVARCHAR, and NVARCHAR data. The server does not scan pieces of a row (such as smart large objects) that are stored outside of the row.

To enable light scans, set the BATCHEDREAD_TABLE configuration parameter to 1. You can also use the IFX_BATCHEDREAD_TABLE environment option of the SET ENVIRONMENT statement to change the value of the BATCHEDREAD_TABLE configuration parameter for a session.

To display scan information, use the new onstat -g scn command. This command supersedes the onstat -g lsc command.

This feature is documented in the IBM Informix Dynamic Server Administrator's Reference and the IBM Informix Performance Guide.

Process Multiple Basic Text Search Queries Simultaneously

If basic text search queries are slow because multiple users are running queries at the same time, you can add more BTS virtual processors so that queries run simultaneously, each in its own virtual processor. Previously, you could only create one BTS virtual processor and queries ran serially.

This feature is documented in the IBM Informix Database Extensions User's Guide.

Load and Unload Data with External Tables

IDS supports external tables. You can read and write from a source that is external to the database server. External tables provide an SQL interface to data in text files managed by the operating system or to data from a FIFO device. To create external tables, use the CREATE EXTERNAL TABLE statement. Use the existing DROP TABLE statement to drop an external table.

This feature is documented in the IBM Informix Guide to SQL: Syntax and IBM Informix Dynamic Server Administrator's Guide.

What's New in Version 11.50.xC5DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC5DE contains new functionality in the following areas:

Configuring RS Secondary Server Latency for Disaster Recovery

To aid in disaster recovery scenarios, you can now configure RS secondary servers to wait for a specified period of time before applying logs. Delaying the application of log files allows you to recover quickly from erroneous database modifications by restoring from the RS secondary server.

This feature is documented in the IBM Informix Dynamic Server Administrator's Guide and IBM Informix Dynamic Server Administrator's Reference.

Forcing the Database Server to Shut Down

Use the onclean utility to force the database server to shut down when normal shut down with the onmode utility fails to shut down the server or when you cannot restart the server. The onclean utility cleans up shared memory, semaphores, and stops database server virtual processes.

Use the onshutdown script to try to shut down the server normally. If the server does not shut down after a specified time, the server is forced to shut down.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhanced Support for Multibyte Character Strings

In database locales that support multibyte code sets, such as UTF-8, a single logical character can occupy up to four bytes of storage. To prevent multibyte character strings from being truncated, use the new SQL_LOGICAL_CHAR session environment variable to instruct IDS to interpret the declared size in units of logical characters. By default, any explicit or default size specifications are interpreted in units of bytes.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

New default for the INFORMIXTERM environment variable for terminal set up on UNIX

The INFORMIXTERM environment variable now defaults to the terminfo directory. If you use DB-Access on UNIX®, the terminal definitions will be taken from the terminfo directory unless you set the INFORMIXTERM environment variable to the termcap file.

This information is documented in the IBM Informix Guide to SQL: Reference.

onconfig Portal: Configuration Parameters Listed by Functional Categories

You can view configuration parameters listed in functional categories as they appear in the onconfig.std file and follow the links to individual configuration parameter topics.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference.

onstat Portal: onstat Commands Listed by Functional Categories

You can view onstat commands listed in functional categories and follow the links to individual onstat command topics.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS

The ER plug-in Version 2.23 has the following enhancements:

See the OpenAdmin Tool help for more information.

Enterprise Replication Stops if Memory Allocation Fails

In previous releases, when data sync threads could not allocate memory, replication continued, but the replicated transactions were aborted and ATS or RIS files were created. Starting in IDS v11.50.xC5, if data sync threads encounter a memory allocation error while replaying replicated transactions, replication stops to prevent data from becoming inconsistent. Event alarm 47 is raised. To resume replication, solve the memory issue and run the cdr start command.

This behavior is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Notification of an Incorrect Log Position When Enterprise Replication Restarts

If the replay log position has been overrun or is later than the current log position when replication restarts, event alarm 75 is now raised. To resume replication, run the cdr cleanstart command and then the cdr check --repair command.

This behavior is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Workaround: Reclaiming Space from Enterprise Replication Paging Smart Large Objects

If you used replication with an IDS version between 11.50.xC3W1 and 11.50.xC4, in IDS v11.50.xC5 you can reclaim space that was used for large transaction handling but that is no longer required. Use the cdr check paging command to check if any outdated smart large objects exist and to reclaim the space. The workaround is documented in Workaround: Reclaiming Space from Enterprise Replication Paging Smart Large Objects in this document.

Improving the Performance of Consistency Checking with an Index

You can now increase the speed of a consistency check on a replicate by indexing a new shadow column, ifx_replcheck. You add the ifx_replcheck column to your replicated table using the WITH REPLCHECK clause and create a unique index on the ifx_replcheck column and your primary key columns. You can also alter an existing table to add the ifx_replcheck column. The replicated table must also have the CRCOLS shadow columns. You cannot perform a table-level restore on a table that contains the ifx_replcheck column.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide and IBM Informix Guide to SQL: Syntax.

Specifying the Range of Data Sync Threads to Apply Replicated Transactions

To specify a minimum and maximum number of data sync threads for applying replicated transactions, set the CDR_APPLY configuration parameter. By default, replication allocates a range of one to four data sync threads for each CPU virtual processor.

This configuration parameter is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Loading Data into a Warehouse with the MERGE Statement

Instead of using separate UPDATE and INSERT statements to load data from an OLTP database into a database warehouse environment, use the new MERGE statement, which can combine UPDATE and INSERT operations into a single SQL statement.

The MERGE statement can merge records from a table, view, or query (the source) with the records in a local table (the target). You can specify a logical condition that MERGE applies to a join of the source and target objects.

The MERGE statement supports Update and Insert triggers on the target table. Any constraints on the target table are enforced in MERGE operations.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

Retrieving Data by Using Hierarchical Queries

You can now retrieve data from a table by using hierarchical queries, which maintain the relationship between the data.

The SELECT statement of Dynamic Server now supports START WITH .. CONNECT BY syntax for recursively querying a table in which a hierarchy of parent-child relationships exist. The syntax can define recursive queries that reflect the topology of the data hierarchy.

This implementation of hierarchical queries uses extensions to the ISO standard for SQL.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

What's New in Version 11.50.xC4DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC4DE contains new functionality in the following areas:

Improved Options for Specifying Processor Affinity

When you specify the processor affinity with the VPCLASS configuration parameter, you can now specify individual processors or ranges of processors. When specifying a range of processors, you can also specify an incremental value with the range that indicates which CPUs in the range should be assigned to the virtual processors.

This information is documented in the IBM Informix Dynamic Server Administrator's Guide and IBM Informix Dynamic Server Administrator's Reference.

Disable IPv6 Support

You can now optionally disable Internet Protocol Version 6 (IPv6) support for better performance on certain platforms. You can disable IPv6 support for one or more database instances or client applications, or for all instances and client applications.

This information is documented in the IBM Informix Dynamic Server Administrator's Guide.

Enhancements to the OpenAdmin Tool for IDS

The OpenAdmin Tool for IDS Version 2.24 has the following enhancements:

See the OpenAdmin Tool help for more information.

Generating a Customized Database Server Configuration File

Use the new genoncfg utility to generate a customized Dynamic Server configuration file that is optimized for both anticipated usage and your host environment.

This information is documented in the IBM Informix Dynamic Server Administrator's Reference.

Generate ATS and RIS Files in XML Format for Custom Repair Scripts

You can now choose to create Aborted Transactions Spooling (ATS) and Row Information Spooling (RIS) files in the new XML format, the traditional text format, or both formats. You can use the XML format of ATS and RIS files to create custom repair scripts based on your business logic. Use the --atsrisformat option of the cdr define server or cdr modify server commands to specify the file format.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Prevent Upserts During Conflict Resolution

You can use the new delete wins conflict resolution rule to perform conflict resolution that compares the time stamps of conflicting rows but prevents upserts. An upsert is an UPDATE operation that is converted to an INSERT operation because the row to update was not found on the target server. An upsert operation can occur if a row is deleted from a target server before an UPDATE operation is processed on that target server or if an UPDATE operation was processed by the target server before the INSERT operation for that row. Depending on your business logic, you might want to prevent deleted rows from being reinserted and UPDATE operations from occurring before INSERT operations.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

New Event Alarms for Enterprise Replication

Event alarms are now generated in the following situations:

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Monitor the Progress of a Consistency Check or a Direct Synchronization

You can now monitor information on the progress of a consistency check or direct synchronization operation, including the estimated duration of the operation. Use the cdr stats check command to monitor consistency checks. Use the cdr stats sync command to monitor synchronization operations.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Specify the Duration of a Consistency Check

By default, inconsistent rows are rechecked once after two seconds, which might not be enough time for replicated transactions to be applied on the target server. You can now specify the number of seconds to spend on rechecking the consistency of inconsistent rows. Rechecking prevents transactions that are in progress from being listed as inconsistent in the consistency report. You can use the --inprogress option of the cdr check replicate and cdr check replicateset commands to specify the maximum number of seconds to perform rechecking.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Schedule Synchronization or Consistency Checking Operations

You can now use the Scheduler to automate the running of synchronization and consistency check operations by using the --background option with the cdr check or cdr sync commands.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Improve Consistency Checking Performance

You can now reduce the duration of a consistency check by performing a check in parallel and by controlling the amount of data that is checked. You can specify a time from which to check updated rows by using the --since option. You can specify a subset of a table to check by using the --where option. You can prevent the checking of large objects by using the --skipLOB option.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Improve the Performance of Checking or Synchronizing Replicate Sets (UNIX)

You can increase the speed of a consistency check or a synchronization operation on a replicate set by performing the operation on each replicate in parallel. Specify the number of parallel processes to use for processing a replicate set by using the --process option.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Role separation for Enterprise Replication (UNIX)

You can now run Enterprise Replication commands as a member of the DBSA group. Previously, only user informix could run Enterprise Replication commands. For some commands, the DBSA user needs to be granted additional permissions on certain data or syscdr tables.

This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS

The Enterprise Replication plug-in for the OpenAdmin Tool for IDS has the following enhancements for administering enterprise replication:

See the Enterprise Replication plug-in help in the OpenAdmin Tool for IDS for more information.

Enable Concurrent I/O to Improve Performance on AIX Operating Systems

You can now improve the performance of cooked files used for dbspace chunks by setting concurrent I/O, which allows multiple reads and writes to a file at the same time. Concurrent I/O provides performance improvements over direct I/O because it avoids the serialization of noncompeting reads and writes from normal file-system locking. Similar to direct I/O, concurrent IO avoids file system buffering. Concurrent I/O can be especially beneficial when you have a file striped across multiple disks. To enable concurrent I/O on AIX®, set the DIRECT_IO configuration parameter to 2.

This feature is documented in the IBM Informix Dynamic Server Administrator's Reference and IBM Informix Dynamic Server Performance Guide.

IFX_LARGE_PAGES Environment Variable (AIX, Solaris)

The IFX_LARGE_PAGES environment variable can enable the use of large pages for non-message shared memory segments that are resident in physical memory. The DBSA must set the RESIDENT configuration parameter accordingly, and must use operating system commands to configure a pool of these large pages. Dynamic Server can then use large pages from that pool, if they are available, for shared virtual memory segments.

This information is documented in the IBM Informix Guide to SQL: Reference.

DataBlade Module Registration through SQL

You can now use the built-in SYSBldPrepare( ) function to register one or more DataBlade® modules or to unregister a DataBlade module, as an alternative to using the BladeManager utility. This enables you to register DataBlade modules from any client API that supports SQL, such as DB-Access, SPL, C API, ESQL, JDBC, or ODBC, and without requiring that BladeManager be installed. Another new function, SYSBldRelease( ), returns the version string of the SYSBldPrepare( ) function.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

Control the Results of a Fuzzy Search with the Basic Text Search DataBlade Module

You can now specify the degree of similarity of search results in fuzzy searches when using the Basic Text Search DataBlade module. Specify a number between 0 and 1, where a higher value results in a higher degree of similarity. To limit results, specify a higher number. To maximize results, specify a lower number. The default degree of similarity is 0.5.

This information is documented in the IBM Informix Database Extensions User's Guide.

Map Characters for Indexing with the Basic Text Search DataBlade Module

You can now map characters in your data to other characters during indexing with the Basic Text Search DataBlade module. For example, you can specify that letters with diacritical marks are indexed as the same letters without marks. You can also standardize inconsistent prefixes or delete character strings from indexed text. To use character maps, include the btsmapchars parameter when you create your bts index.

This information is documented in the IBM Informix Database Extensions User's Guide.

Default Boolean Operator in Basic Text Search Queries

You can now change the default Boolean operator between search terms in Basic Text Search queries from OR to AND by using the query_default_operator parameter when you create a bts index. The default operator is represented by a blank space between terms. Many popular end-user search engines use AND as the default operator between search terms, where end-users expect the search results to contain all their search terms.

This information is documented in the IBM Informix Database Extensions User's Guide.

Storage for Temporary Basic Text Search Files

You can now specify that temporary files used by the Basic Text Search DataBlade module are stored in a separate sbspace from the one used to store the bts index. Separating temporary files from the bts index might improve query performance.

This information is documented in the IBM Informix Database Extensions User's Guide.

Track Basic Text Search Query Trends

You can now track what queries are run against your bts index by including the query_log parameter when you create a bts index. You can use query trends information to provide hints to end-users on popular queries or work on optimizing the most popular queries.

This information is documented in the IBM Informix Database Extensions User's Guide.

Fragment bts Indexes by Expressions

You can now fragment bts indexes by expressions into multiple sbspaces instead of a single sbspace.

This information is documented in the IBM Informix Database Extensions User's Guide.

Monitor Change Data Capture Sessions

You can now monitor the sessions involved in change data capture by using the new onstat -g cdc command. Use the options to display information about the captured tables, the buffers being used by sessions, the configuration of sessions, or the data capture activity.

This information is documented in the Documentation Notes for the IBM Informix Change Data Capture Programmer's Guide.

View Change Data Capture Error Message Text

You can now view the error message text corresponding to an error name by using the new cdc_errortext() function.

This information is documented in the Documentation Notes for the IBM Informix Change Data Capture Programmer's Guide.

Automatic Check for Installation Path Security (UNIX, Linux, Mac OS X)

The installation program now verifies that all the directories in the installation path are secure. For most environments, installation will proceed without any user interaction with the security check. However, if any directories are not secure, you will be presented with options to address the problem, including one option to automatically reset the directory owner, group, and permissions settings.

This feature is documented in the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X and Quick Beginnings for IBM Informix Dynamic Server Express Edition.

Utility to Enhance the Security of the Dynamic Server Installation Path (UNIX, Linux, Mac OS X)

The new onsecurity utility checks the security of the runtime path specified by the INFORMIXDIR environment variable to prevent an attacker from using privileged programs that run with the database server, such as the oninit, onmode, and onstat utilities. When the onsecurity utility detects a potential security vulnerability, it prevents the database server from being initialized and disables other essential operations so that it is not possible for an unauthorized user to tamper with your installation.

This information is documented in the IBM Informix Security Guide.

What's New in Version 11.50.xC3DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC3DE contains new functionality in the following areas:

Performing Unattended Installations on Mac OS X

Now you can install Dynamic Server, Client Software Development Kit (Client SDK), and Informix Connect on Mac OS X by setting installation information in the new bundle.ini file, which is provided on the installation media as a template, and running an installation command. In earlier releases, to install these products on MAC OS X, you had to start the installation process and provide installation information interactively.

This installation process is documented in the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

Setting up Source Names on Mac OS X

You can now set up IBM Informix ODBC Driver data source names (DSNs) by using the Apple ODBC Administrator on computers running Mac OS X.

This feature is documented in the IBM Informix ODBC Driver Programmer's Manual.

Using SQL Administration API to Dynamically Update Configuration Parameters

You can dynamically set configuration parameters by using the new SQL administration API SET ONCONFIG commands. These new commands provide the same function as the onmode -wf or onmode -wm commands. Use the SET ONCONFIG or SET ONCONFIG PERMANENT commands to change configuration parameters in the ONCONFIG file. Use the SET ONCONFIG MEMORY command to configure parameters only for the current session.

The SET ONCONFIG commands are described in the IBM Informix Guide to SQL: Syntax.

Dynamically Updating the LTXEHWM, LTXHWM, and DYNAMIC_LOGS Configuration Parameters

You can now dynamically update the value of the LTXEHWM, LTXHWM, and DYNAMIC_LOGS configuration parameters by using the onmode -wf or onmode -wm command. The onmode -wf command changes the value in the ONCONFIG file. The onmode -wm command changes the value for the current session.

These onmode commands are documented in the IBM Informix Dynamic Server Administrator's Reference.

Dynamically Updating Enterprise Replication Configuration Parameters in the ONCONFIG File

Previously, the cdr add onconfig, cdr change onconfig, and cdr remove onconfig commands dynamically updated Enterprise Replication configuration parameters for the current session only. Now these commands create persistent updates to Enterprise Replication configuration parameters in the ONCONFIG file.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Improved Consistency Reporting after Enterprise Replication Repair Operations

Consistency reports generated after repair operations might show temporary inconsistencies between servers until all replicated transactions are completed on the target server. The -R option for cdr check replicate and cdr check replicateset commands now re-checks the repaired rows. If any rows are inconsistent, the check is rerun every five seconds, up to a maximum of 12 times (for a total elapsed time of 60 seconds). If rows are still inconsistent after the 12th check , a description of those inconsistent rows is displayed.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Administering and Monitoring Enterprise Replication with SQL Administration API

Now you can use the SQL administration API to administer and monitor Enterprise Replication with the same syntax elements that are in the cdr command-line syntax.

The syntax for using Enterprise Replication cdr commands with the ADMIN and TASK routines is described in the IBM Informix Guide to SQL: Syntax. The cdr command-line syntax is described in the IBM Informix Dynamic Server Enterprise Replication Guide.

Improved SQL Tracing with the SQL Administration API

You can use these new commands to manage SQL tracing by databases, sessions, and users: SET SQL TRACING DATABASE, SET SQL TRACING SESSION, and SET SQL TRACING USER. Previously, you could only trace SQL for all databases at the server. Now you can control which databases to include in the SQL trace. You can also turn tracing on or off for a specific session, and specify whether you want to trace SQL statements run by specific users. You can also suspend and resume all tracing at the server, without deallocating any resources, by using the SET SQL TRACING SUSPEND and RESUME commands.

All SET SQL TRACING commands are described in the IBM Informix Dynamic Server Administrator's Reference.

Changing the Size of the First Extent of a Table

When you create a table, you specify a first extent size based on the eventual estimated size of the table. If the table becomes larger or smaller than that estimate, you might want to change the size of the first extent to avoid either having too many extents or creating extents that are larger than necessary. You can now change the size of the first extent of a table in a dbspace. When you change the size of the first extent, Dynamic Server records the change (in the system catalog and on the partition page), but only makes the actual change when the table is rebuilt or a new partition or fragment is created.

This feature, including the syntax for the new MODIFY EXTENT SIZE clause that you use with the ALTER TABLE statement, is documented in the IBM Informix Guide to SQL: Syntax.

Rolling Back SQL Transactions to a Savepoint

You can now declare or reference savepoint objects in SQL statements. A savepoint identifies an arbitrary location within the statements of an SQL transaction. Within its transaction, the savepoint resembles a statement label to which the ROLLBACK statement of SQL can cancel any changes to the database that the transaction produced between the savepoint and the ROLLBACK statement. A client application that declares one or more savepoints within a transaction can implement error-handling logic that rolls back only the portion of the transaction that follows the specified savepoint, rather than cancelling the entire transaction if an exception occurs.

The following new SQL statements are implemented for savepoints:

This release of Dynamic Server directly supports the SQL statements that declare or reference savepoint objects in DB-Access and in UDRs written in the SPL, C, or Java™ languages. Methods that support savepoints are also supported in JDBC applications. Applications written in ESQL/C that use the savepoint statements of SQL are also supported with this release of Client SDK.

This feature is documented in IBM Informix JDBC Driver Programmer's Guide.

Capturing Transactional Data with the Change Data Capture API

Use the Change Data Capture (CDC) API with your client applications to capture transactional data from Dynamic Server databases. The API includes a new system database called syscdc, which includes built-in SQL functions that control data capture.

This feature is documented in a new publication, the IBM Informix Change Data Capture Programmer's Guide. For version 11.50.xC3, this publication is available only online, in the IDS information center at http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp and in the IBM Publications Center at http://www.elink.ibmlink.ibm.com/public/applications/publications/cgibin/pbi.cgi.

Basic Text Search DataBlade Module Supports High-Availability Clusters

You can now use the Basic Text Search DataBlade module to perform searches on high-availability cluster servers by creating indexes in sbspaces. Previously, the Basic Text Search DataBlade module only supported the creation of indexes in extspaces, and thus could not participate in any queries on high-availability secondary servers and in backup and restore operations.

The Basic Text Search DataBlade module enhancements are documented in the IBM Informix Database Extensions User's Guide.

Querying XML Attributes with the Basic Text DataBlade Module

The Basic Text Search Datablade Module now supports searches on XML attributes in a document repository. The new all_xmlattrs parameter enables searches on all attributes that are contained in the XML tags or paths in a column that contains an XML document.

This feature is documented in the IBM Informix Database Extensions User's Guide.

Setting the Frequency of Error Checking for Smart Large Object Transmission

Use the IFX_LOB_XFERSIZE environment variable to specify the number of bytes in a CLOB or BLOB to transfer from a client application to the database server before checking for errors. The error check occurs each time the specified number of bytes is transferred. If an error occurs, the remaining data is not sent and an error is reported. If no error occurs, the file transfer will continue until it finishes. For example, if the value of IFX_LOB_XFERSIZE is set to 10485760 bytes (10 MB), error checking will occur after every 10485760 bytes of the CLOB or BLOB are sent. If you do not set this environment variable, the error check occurs after the entire BLOB or CLOB is transferred.

You should adjust the value of IFX_LOB_XFERSIZE to suit your environment. Set IFX_LOB_XFERSIZE low enough so that transmission errors of large BLOB or CLOB data types are detected early, but not so low that excessive network resources are consumed.

This feature is currently documented in the documentation notes for the IBM Informix Guide to SQL: Reference.

What's New in Version 11.50.xC2DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC2DE contains new functionality in the following areas:

Reconfiguring Connection Manager while It's Running

In past releases, you had to stop the Connection Manager to modify how it was configured, and then restart it for the new configuration to take effect. With the new reload option (-r), you can reconfigure the Connection Manager without stopping and restarting it.

Connection Manager is primarily documented in the IBM Informix Dynamic Server Administrator's Guide and the IBM Informix Dynamic Server Administrator's Reference.

Enhanced Dynamic Server Installation Application on Mac OS X

The Dynamic Server installation application can automatically tune the kernel settings to values that support a working instance of the database server on your computer. In addition, after setup of a demonstration database server is complete, a terminal icon appears inside the installation directory for easier navigation.

This feature is documented in the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

Improving the Performance of an Enterprise Replication Synchronization Operation

You can now improve the performance of a synchronization operation by temporarily increasing the size of the send queue. Enterprise Replication uses the value of the CDR_QUEUEMEM configuration parameter as the size of the send queue during a synchronization operation. To increase the size of the send queue during a particular synchronization operation, use the --memadjust option for the cdr sync replicate, and cdr sync replicateset commands. If you synchronize with the cdr start replicate, cdr start replicateset, or cdr realize template commands, you can specify that the synchronization operation is performed as a foreground process with the new --foreground option, and increase the send queue size with the --memadjust option.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Obtaining IDS Version Information From the cdr Utility

In previous releases, you could not obtain product version information by using the cdr utility. You can now use the cdr -V command to display the version of IDS that is currently running.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Monitoring Enterprise Replication with New SMI Tables

SMI tables provide a way to obtain information by using SQL commands, either locally or from remote servers. The following new SMI tables contain information about Enterprise Replication that you can use to monitor status and diagnose problems:

syscdr_state
Contains information on whether Enterprise Replication, data capture, data apply, and the network between servers is active.
syscdr_ddr
Contains information about the status of log capture and the proximity or status of transaction blocking (DDRBLOCK) or transaction spooling.
syscdr_nif
Contains information about network connections and the flow of data between Enterprise Replication servers.
syscdr_rcv
Contains information about transactions being applied on target servers and acknowledgements being sent from target servers.
syscdr_atsdir
Contains information about the contents of the ATS directory.
syscdr_risdir
Contains information about the contents of the RIS directory.
syscdr_ats
Contains the first ten lines of the header of each ATS and RIS file.
syscdr_ris
Contains the first ten lines of the header of each ATS and RIS file.
syscdr_rqmstamp
Contains information about which transaction is being added into each queue.
syscdr_rqmhandle
Contains information about which transaction is being processed in each queue.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Monitoring the Whole Enterprise Replication Domain

You can now monitor the status of all Enterprise Replication servers from any one of those servers with the new cdr view command. Specify one or more subcommands, depending on what information you want to monitor. You can automatically rerun the cdr view command every specified interval by using the --repeat option.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

Preventing ATS or RIS File Generation

You can prevent generating ATS or RIS files by setting the ATS or RIS directory to /dev/null.

This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.

New Default Value for the EXPLAIN_STAT Configuration Parameter

The new default value for the EXPLAIN_STAT configuration parameter in onconfig.std is 1. This setting enables the inclusion of a Query Statistics section in the explain output file. The EXPLAIN_STAT configuration parameter was introduced in version 11.10.xC1 with a default value of 1, but the value in onconfig.std was changed to 0 for 11.50.xC1.

The IBM Informix Dynamic Server Administrator's Reference incorrectly states that the default value for EXPLAIN_STAT is 0.

Default values for Java configuration parameters are updated in the onconfig.std file

Java configuration parameters now have the following default values in the onconfig.std file:

JVPJAVAHOME     $INFORMIXDIR/extend/krakatoa/jre
JVPHOME         $INFORMIXDIR/extend/krakatoa 
JVPPROPFILE     $INFORMIXDIR/extend/krakatoa/.jvpprops 
JVPLOGFILE      $INFORMIXDIR/jvp.log  
#JDKVERSION      1.5
#JVPARGS	-verbose:jni
#JVPCLASSPATH  $INFORMIXDIR/extend/krakatoa/krakatoa_g.jar:$INFORMIXDIR/extend/krakatoa/jdbc_g.jar
JVPCLASSPATH  $INFORMIXDIR/extend/krakatoa/krakatoa.jar:$INFORMIXDIR/extend/krakatoa/jdbc.jar

Limiting the Number of Sessions That Can Connect to Dynamic Server

You can now limit the number of sessions that can connect to the server. You do this by setting the LIMITNUMSESSIONS configuration parameter to the maximum number of sessions that you want connected to the database server. Optionally, you can also specify whether you want the server to print messages when the number of sessions approaches a specified maximum number. You can use onmode -wm and onmode -wf commands to turn this configuration parameter on or off or change the value of the configuration parameter.

This feature is primarily documented in the IBM Informix Dynamic Server Administrator's Reference.

New Format for Backup Filters

Backups have a new format for version 11.50.xC2 if they are performed with the ontape command using a filter specified by the BACKUP_FILTER configuration parameter. The new backup format is not backwards compatible. Any backups that were made prior to version 11.50.xC2 must be restored with the earlier versions of the filter.

Enhancements to the OpenAdmin Tool for IDS

The OpenAdmin Tool for IDS Version 2.22 has the following enhancements:

See the OpenAdmin Tool release notes for more information.

Controlling I/O of B-Tree Indexes with Compression Levels

B-tree scanners can now compress indexes by merging two partially used index pages if the data on those pages totals a set level (low, medium, or high). You can specify the index compression level by modifying the value of the compression field of the BTSCANNER configuration parameter option, by running an onmode -C compression value command, or by running an SQL administration API function with a SET INDEX COMPRESSION command.

This feature is primarily documented in the IBM Informix Dynamic Server Administrator's Reference.

Subquery Support in UPDATE and DELETE Statements

The FROM clause of a subquery in the WHERE clause of the DELETE or UPDATE statement can specify as a data source the same table or view that the FROM clause of the DELETE or UPDATE statement specifies. In this version, Dynamic Server supports DELETE and UPDATE operations with subqueries that reference the same table object if all of the following conditions are true:

If you call SPL routines within the same subquery, these cannot reference the table that is being modified.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

Longer Return Strings from String Manipulation Functions

The following SQL string-manipulation functions now support operations where the returned string can be up to 32 KB in length:

In addition, the CONCAT function and the || operator now provide native support for the LVARCHAR data type.

This feature is documented in the IBM Informix Guide to SQL: Syntax.

Server-Specific Audit Configuration File Functionality

Each server instance uses its own adtcfg.servernumber file if the audit configuration parameters are changed with the onaudit utility. The new -n option for the onshowaudit utility reads the server-specific audit configuration (adtcfg.servernumber) file.

This feature is documented in the IBM Informix Security Guide.

What's New in Version 11.50.xC1DE of IBM Informix Dynamic Server

IBM Informix Dynamic Server, Version 11.50.xC1DE contains new functionality in the following areas:

SQL Administration API Commands to Configure High-Availability Clusters Added

You can now use SQL administration API commands to perform the equivalent of onmode -d commands to configure high-availability clusters.

SQL administration API commands are documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhanced Connection Management for High-Availability Clusters

The new Connection Manager dynamically routes client application connection requests to the most appropriate server in a high-availability cluster. Connection Manager connects to each of the servers in the cluster and gathers statistics about the type of server, unused workload capacity, and the current state of the server. From this information, the Connection Manager redirects the connection to the appropriate server. In addition, Connection Manager Arbitrator provides automatic failover logic for high-availability clusters. Using a configuration file, you specify which secondary server takes over if the primary server fails.

Connection Manager is installed with Client SDK. Connection Manager requires that applications connecting to it be compiled with Client SDK 3.50 or the IBM Data Server Driver for JDBC and SQLJ.

Connection Manager is primarily documented in the IBM Informix Dynamic Server Administrator's Guide and the IBM Informix Dynamic Server Administrator's Reference.

Update Data Support on High-Availability Cluster Secondary Servers

Client applications can now update data while connected to secondary servers. To enable client applications to perform insert, update, and delete operations on a secondary server, set the UPDATABLE_SECONDARY configuration parameter to the number of connections to create between the primary and secondary servers. The maximum value of this parameter is two times the number of CPU virtual processors. Set UPDATABLE_SECONDARY to zero to configure the secondary server as read-only.

This feature is documented in the IBM Informix Dynamic Server Administrator's Guide and the IBM Informix Dynamic Server Administrator's Reference.

New Options to Troubleshoot High-Availability Clusters

The following new onstat commands provide diagnostic information about high-availability clusters:

The following new sysmaster tables contain equivalent information as the new onstat commands:

These options are documented in the IBM Informix Dynamic Server Administrator's Guide and IBM Informix Dynamic Server Administrator's Reference.

Support for Transient Types on High-Availability Cluster Secondary Servers

Transient unnamed complex data types (ROW, SET, LIST, and MULTISET) can now be used on high-availability cluster secondary servers.

The following types of operations that use transient types are supported on secondary servers:

This feature is primarily documented in the IBM Informix Dynamic Server Administrator's Guide.

Enhanced Configuration Options for Installation

You can use the new Instance Configuration Wizard to automatically create the database server configuration file (ONCONFIG) during installation. Access the wizard in the installation program with either GUI or console installation modes:

Provide the information for the instance that you are installing, such as the number of CPUs, memory, disk space, and estimates of online transactions and query clients. The wizard ensures that your settings are valid, and it calculates values for other server configuration parameters based on your settings. Your custom configuration information is stored in the ONCONFIG file so that when you start the instance after the product is installed, the instance runs with your settings.

This feature is documented in the IBM Informix Dynamic Server Installation Guide for Windows and the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

Improved onconfig.std and New Default Values for Configuration Parameters

The IDS configuration file, onconfig.std, has been improved in the following ways:

Tip: If you use a utility like grep on the onconfig.std, include a new-line character when you search for configuration parameters names so that you do not return the parameter description. For example, the following command returns both the description and the configuration parameter:
grep "MSGPATH" onconfig.std
# MSGPATH      - The name of the IDS message log file
MSGPATH $INFORMIXDIR/tmp/online.log
Whereas, this command returns only the configuration parameter:
grep "^MSGPATH" onconfig.std
MSGPATH $INFORMIXDIR/tmp/online.log

The following table lists the configuration parameters that are added to the onconfig.std file and their values.

Table 1. Configuration Parameters added to onconfig.std
Configuration Parameter Value
ADMIN_USER_MODE_WITH_DBSA none
BTSCANNER num=1,priority=low,threshold=5000,rangesize=-1,alice=6
BACKUP_FILTER none
BAR_DEBUG 0
CDR_SUPPRESS_ATSRISWARN none
DD_HASHMAX 10
DD_HASHSIZE 31
DEF_TABLE_LOCKMODE page
DS_HASHSIZE 31
DS_POOLSIZE 127
ENCRYPT_CDR none
ENCRYPT_CIPHERS none
ENCRYPT_HDR none
ENCRYPT_MAC none
ENCRYPT_MACFILE none
ENCRYPT_SMX none
ENCRYPT_SWITCH none
EXT_DIRECTIVES 0
FAILOVER_CALLBACK none
FASTPOLL 1
HA_ALIAS none
LOG_INDEX_BUILDS none
MAX_INCOMPLETE_CONNECTIONS 1024
PC_HASHSIZE 31
PC_POOLSIZE 127
PLCY_HASHSIZE 127
PLCY_POOLSIZE 31
PLOG_OVERFLOW_PATH UNIX: $INFORMIXDIR/tmp

Windows: none

RESTORE_FILTER none
SBSPACETEMP none
SDS_ENABLE none
SDS_PAGING none
SDS_TEMPDBS none
SDS_TIMEOUT 20
SECURITY_LOCALCONNECTION none
SQLTRACE Commented out: # SQLTRACE level=low,ntraces=1000,size=2,mode=global
SSL_KEYSTORE_LABEL none
STMT_CACHE 0
STMT_CACHE_HITS 0
STMT_CACHE_NOLIMIT 0
STMT_CACHE_NUMPOOL 1
STMT_CACHE_SIZE 512
TEMPTAB_NOLOG 0
UNSECURE_ONSTAT none
UPDATABLE_SECONDARY 0
USRC_HASHSIZE 31
USRC_POOLSIZE 127
VPCLASS cpu,num=1,noage

Commented out: # VPCLASS aio,num=1

Commented out: #VPCLASS jvp,num=1

The following table lists configuration parameters whose value in onconfig.std file has been updated.

Table 2. Configuration Parameters Updated in onconfig.std
Configuration Parameter Previous value New value
ADMIN_MODE_USERS 1 None
ALARMPROGRAM UNIX: /usr/informix/etc/alarmprogram.sh

Windows: None

UNIX: $INFORMIXDIR/etc/alarmprogram.sh

Windows: $INFORMIXDIR\etc\alarmprogram.bat

BAR_ACT_LOG /usr/informix/bar_act.log UNIX: $INFORMIXDIR/tmp/bar_act.log

Windows: $INFORMIXDIR\tmp\bar_act.log

BAR_BSALIB_PATH UNIX: $INFORMIXDIR/lib/libsad001.so

Window: libbsa.dll

None
BAR_DEBUG_LOG UNIX: /usr/informix/bar_dbug.log

Windows: bar_dbug.log

UNIX: $INFORMIXDIR/tmp/bar_dbug.log

Windows: $INFORMIXDIR\tmp\bar_dbug.log

BUFFERPOOL

Operating systems with 2K page size:

default,buffers=5000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

size=2k,buffers=5000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

Operating systems with 4K page size:

default,buffers=1000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

size=4k,buffers=1000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

Operating systems with 2K page size:

default,buffers=10000,lrus=8,lru_min_dirty=50.00,lru_max_dirty=60.50

size=2k,buffers=50000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

Operating systems with 4K page size:

default,buffers=10000,lrus=8,lru_min_dirty=50.00,lru_max_dirty=60.50

size=4k,buffers=10000,lrus=8,lru_min_dirty=50,lru_max_dirty=60

CLEANERS 1 8
CONSOLE UNIX: /dev/console

Windows: console.log

UNIX: $INFORMIXDIR/tmp/online.con

Windows: online.con

DB_LIBRARY_PATH commented out: # DB_LIBRARY_PATH $INFORMIXDIR/extend commented out: # DB_LIBRARY_PATH
DRLOSTFOUND UNIX: /usr/etc/dr.lostfound

Windows: \tmp

UNIX: $INFORMIXDIR/etc/dr.lostfound

Windows: $INFORMIXDIR\tmp

DUMPDIR UNIX: /usr/informix/tmp

Windows: INFORMIXDIR\tmp

UNIX: $INFORMIXDIR/tmp

Windows: $INFORMIXDIR\tmp

LISTEN_TIMEOUT 10 60
LOCKS 2000 20000
LOGBUFF 32 64
LOGSIZE 2000 10000
LTAPEDEV UNIX: /dev/tapedev

Windows: \\.TAPE1

UNIX: /dev/tapedev (same as previous value)

Windows: NUL

MIRRORPATH None UNIX: $INFORMIXDIR/tmp/demo_on.root_mirror

Windows: none

MSGPATH UNIX: /usr/informix/online.log

Windows: online.log

UNIX: $INFORMIXDIR/tmp/online.log

Windows: online.log

NETTYPE UNIX: none

Windows: onsoctcp,drsoctcp,1,NET

UNIX: ipcshm,1,50,CPU

Windows: none

PHYSBUFF 32 128
PHYSFILE 2000 50000
RA_PAGES None 64
RA_THRESHOLD None 16
ROOTPATH UNIX: /dev/online_root

Windows: None

UNIX: $INFORMIXDIR/tmp/demo_on.rootdbs

Windows: None

ROOTSIZE 30000 200000
SHMVIRT_ALLOCSEG 0 0,3
SHMVIRTSIZE 8192 32656
SYSALARMPROGRAM UNIX: /usr/informix/etc/evidence.sh

Windows: INFORMIXIDR\etc\evidence.bat

UNIX: $INFORMIXDIR/etc/evidence.sh

Windows: Commented out:

# SYSALARMPROGRAM $INFORMIXDIR\etc\evidence.bat

TAPEBLK 32 UNIX: 32

Windows: 16

TAPESIZE 10240 0

The following configuration parameters were removed from the onconfig.std file:

The changes to configuration parameter default values are documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhancements to the OpenAdmin Tool for IDS

The OpenAdmin Tool for IDS has the following enhancements:

See the OpenAdmin Tool for IDS release notes for more information.

Enhanced Data Server Client Session Information

You can use the new syssesappinfo table in the sysmaster database to view Data Server client session information. The table shows the client session ID, session application name, and a session value in the sesapp_sid, sesapp_name, and sesapp_value columns.

You can now also display client session information using the onstat -g ses command.

The syssesappinfo table and the onstat -g ses command are documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhanced Shared-Memory Dump File Size Control

By using the new options for the DUMPSHMEM configuration parameter and the onstat utility, you can control how much memory is written to a dump file. These options exclude the buffer pool in the resident memory, which can result in a much smaller file.

Use the DUMPSHMEM configuration parameter to automatically create a dump file when an assertion fails. Set DUMPSHMEM to 2 to create a shared memory dump that excludes the buffer pool. You can dynamically change the value of DUMPSHMEM with onmode -wm and onmode -wf.

Use the new nobuffs option for the onstat -o command to write the contents of shared memory without the buffer pool to a specified file. If you do not specify a file, the contents are written to a file called onstat.out in the current working directory.

If you use onstat -o without an option, the nobuffs or full option is controlled by the DUMPSHMEM configuration parameter setting.

Any onstat options, such as onstat -i (interactive), that work with a full dump file will work with a dump file that excludes the buffer pool.

This feature is primarily documented in the IBM Informix Dynamic Server Administrator's Reference.

Enhanced Startup Script Customization

You can customize startup scripts and automate startup with the new -w option for the oninit utility. The -w option forces the server to wait until it successfully initializes before returning a shell prompt. The -w option provides a return code so that you can check if the system started without incident. If the server fails to initialize within a configurable timeout period, the utility returns a 1 and writes a message to the online.log file. A return code of 0 indicates a successful initialization.

The -w option works with both disk-space initialization and shared-memory initialization oninit options.

In a high-availability environment, you can only use the oninit -w command on primary servers; it is not valid on secondary servers.

The -w option to the oninit utility is documented in the Administrator's Reference.

New Options for Configuring Storage Space Monitoring

You can configure how you are notified when a storage space or partition becomes full with the new STORAGE_FULL_ALARMS configuration parameter. By default, you will now receive alarms and messages in the online message log when a dbspace, sbspace, temporary dbspace, blobspace, or partition becomes full. You can specify the level of the alarms or disable them. You can also specify the time interval between alarms and messages. By default, level 3 alarms are enables with an interval of 10 minutes.

This features is documented in the IBM Informix Dynamic Server Administrator's Guide and the IBM Informix Dynamic Server Administrator's Reference.

Updating Table Statistics with AUS Scheduler Tasks

The new Auto Update Statistics (AUS) scheduler tasks can improve the performance of the database server by regularly providing the query optimizer with updated table statistics as the basis for efficient query plans.

  1. Use the Auto Update Statistics Evaluation task to generate a prioritized set of UPDATE STATISTICS statements. Built-in policies specify criteria for identifying the tables whose column distributions should be recalculated, but you can modify these default policies.
  2. Use the Auto Update Statistics Refresh task to run the statements during a recurring time interval that you set.

Control External Directives for a Session

You now can use the new EXTDIRECTIVES session environment option of the SET ENVIRONMENT statement to control whether external directives are enabled, disabled, or have default behavior during a session. Specify the default directives behavior with the EXT_DIRECTIVES configuration parameter and the client-side IFX_EXTDIRECTIVES environment variable.

For more information, see the SET ENVIRONMENT syntax diagram and the section on the EXTDIRECTIVES option in the IBM Informix Guide to SQL: Syntax.

Improved Query Performance for Large Integers and Serial Data

The BIGINT and BIGSERIAL data types, which are provided as alternatives to the INT8 and SERIAL8 data types. can provide better performance than the INT8 and SERIAL8 data types.

This feature is primarily documented in the IBM Informix Guide to SQL: Reference.

Support for Obtaining Explain Output in XML Format Added

EXPLAIN_SQL() is a new routine that prepares a query and returns a query plan in XML. The IBM Data Studio Administration Console can use EXPLAIN_SQL to obtain the XML query plan, interpret the XML, and render the plan visually. Vendors can use this routine to obtain explain output in XML format.

For information on using IBM Data Studio, see IBM Data Studio documentation.

DRDA Protocol Configuration During Installation Added

It's easier now than in past releases to set up an instance to use a variety of database clients. When you install IDS 11.50, the installer enables you to configure a database server alias and a port for clients that use the Distributed Relational Database Architecture™ (DRDA®) protocol. By default, those items are configured for you unless you deselect DRDA support. DRDA is for open development of applications that allow access of distributed data.

This feature is documented in the IBM Informix Dynamic Server Installation Guide for Windows and the IBM Informix Dynamic Server Installation Guide for UNIX, Linux, and Mac OS X.

SQL Expressions with the IS [NOT] NULL Predicate

Now you can use SQL expressions as operands of the IS NULL and IS NOT NULL predicate. Previously, you could only use column name operands with IS NULL and IS NOT NULL, which return a TRUE or FALSE result.

The use of IS NULL or IS NOT NULL with expressions enables you to provide a value for entries that otherwise are not computable because NULL is not a valid numerical value. For more information on using IS NULL or IS NOT NULL with expressions, and for an example of a CASE expression that allows NULL values to be treated as 0 for the purpose of arithmetic computations, see the IBM Informix Guide to SQL: Syntax.

Determine Data Currency with a Version Column

You can now include version shadow columns when a table is created, or add to an existing table version columns that store both a checksum and a version number. You can use a version column to detect if a row has been updated after it was originally queried. Also, version numbers enable you to detect differences if a row is deleted and another row is re-inserted into a table. To create a table with version shadow columns, use the CREATE TABLE table WITH VERCOLS statement. To add version columns to a table, use the ALTER TABLE tablename ADD VERCOLS statement.

Web applications can use version columns to determine if information about a previously retrieved object is still current. For example, a Web application can display an item to a customer, and then, when the customer decides to buy the item, the application can check the version column of the item's row to determine if the information about the item has changed.

Version columns might also improve the performance of an updatable secondary in a high-availability cluster because during collision detection, the primary server only needs to compare the version of the updated row, instead of the entire contents of the row.

This feature is documented in the IBM Informix Guide to SQL: Syntax and the IBM Informix Dynamic Server Administrator's Guide.

Distributed Relational Database Architecture (DRDA) Enhancements

DRDA enables communication between applications and database systems on disparate platforms and enables relational data to be distributed among multiple platforms. Enhancements to DRDA functionality include:

These features are primarily documented in the IBM Informix Dynamic Server Administrator's Guide.

J/Foundation Upgraded to JRE 5.0

The J/Foundation component of Dynamic Server has been upgraded from JRE 1.4.2 to JRE 5.0 (Java Version 1.5.0). This upgrade supports JRE 5.0 and JDK 5.0 for server-based Java routines.

The JRE 5.0 upgrade new settings for the JVPJAVAVM configuration parameter.

Depending on your application requirements, you should test and possibly increase the value for the JVM_MAX_HEAP_SIZE environment variable to configure the heap size for the new JVM.

This feature is documented in the J/Foundation Developer's Guide.

Improvements to the Basic Text Search DataBlade Module

You have the following new facilities for using bts indexes:

To use these features, you must register this new version of the Basic Text Search DataBlade module in your databases.

These features are documented in the IBM Informix Database Extensions User's Guide.

New Support for Dynamic SQL Statements in SPL Routines

In earlier versions of the Informix SPL language, the form of SQL statements in a UDR was known when the SPL routine was written. Users can now specify queries dynamically at runtime in SPL routines, using the EXECUTE IMMEDIATE and PREPARE statements to execute dynamically constructed SQL statements and to define and manage cursors and prepared objects with the DECLARE, OPEN, FETCH, CLOSE and FREE statements.

For some of these Dynamic SQL statements, the SPL syntax is a subset of the existing ESQL/C syntax, but character expressions that evaluate to SQL statement text are now supported by PREPARE and EXECUTE IMMEDIATE statements in SPL routines. In addition, Boolean conditions in SPL statements can specify SQLCODE as an expression that returns the SQLCA status from the most recently executed SQL statement.

This feature increases the flexibility of UDRs written in the SPL language, and simplifies the migration to IDS of stored procedures and applications written for other database servers that support Dynamic SQL operations. This feature is documented in the IBM Informix Guide to SQL: Syntax.

New Support for Extensible Stylesheet Language Transformation (XSLT)

You can now use built-in SQL functions to transform XML documents using extensible stylesheet language transformations (XSLTs). IDS supports the XSLT 1.0 standard for style sheets with the Xalan and Xerces libraries.

This feature is documented in the IBM Informix Dynamic Server XML User's Guide.

Single Sign-on Support Added

With single sign-on, users authenticate themselves once and the authentication is carried securely over trusted and non-trusted networks. The users provide a valid user ID and password when they log in to a client computer, and they can access the database server and other SSO-enabled services without having to log in again. In the past, users had to log in multiple times.

IDS delivers support for SSO in the Generic Security Services Communications Support Module (GSSCSM). GSSCSM works with Kerberos, which is a network authentication protocol. You must deploy a Kerberos authentication protocol that supports the Generic Security Services Application Programming Interface (GSSAPI) before you can use SSO with IDS. After you enable SSO, you benefit from centralized management of authentication.

This feature is primarily documented in the IBM Informix Security Guide.

Support for Encrypting Data by Using Secure Sockets Layer (SSL) Communications Added

You can now configure IDS to use the SSL protocol, which encrypts data in TCP/IP connections between two points over a network. The SSL protocol is an alternative to the IDS-specific encryption Communication Support Module (CSM) and simple password CSM for CSDK clients. You must use SSL to encrypt data in communications between IDS and DRDA clients.

This feature is primarily documented in the IBM Informix Security Guide.

Supported Releases

IDS Developer Edition does not include any other products.

IBM products that are distributed with IDS for other editions, but are distributed separately from Developer Edition, include:

Older versions of Informix client products are also compatible with IDS 11.50. However, not all IDS functionality is supported by older clients.

IBM Informix products certified to operate correctly with IDS, but distributed separately, include:

The Informix Dynamic Server Interoperability with Other Products Web site shows which versions of other products are certified to work with which versions of IDS. Certifications against IDS 11.50.xC6 will be added as they are completed. Visit this Web site at this URL:

http://www.ibm.com/software/data/informix/ids/interop/

Additional Information for the Spatial DataBlade Module

The Spatial Data CD contains worldwide location-based data that can be visualized and manipulated using the free IBM Informix Spatial DataBlade bundle. This bundle, which can be ordered or downloaded free from http://www.ibm.com/software/data/informix/blades/spatial/, contains the following:

Standard Cryptographic Library

The standard cryptography library for this release is IBM Crypto for C (ICC). This library satisfies FIPS compliance.

New Keywords

For IDS 11.50.xC6, the new keywords are:

For IDS 11.50.xC5, the new keywords are:

For IDS 11.50.xC3, SAVEPOINT is a new keyword.

For IDS 11.50.xC2, HDR is a new keyword.

For IDS 11.50.xC1, the new keywords are:

Informix Documentation

Information Center for Product Documentation

The IDS 11.50.xC6 information center integrates the entire IBM Informix Dynamic Server 11.50.xC6 and IBM Informix Client SDK (CSDK) 3.50.xC6 documentation sets. The Information Center provides full text search, logical categories, easy navigation, and links to troubleshooting and support files.

The URL for the IDS 11.50.xC6 information center is: http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp.

How to Provide Documentation Feedback

You are encouraged to send your comments or reports of suspected defects in IBM Informix user documentation, using one of the following methods:

Feedback from both methods is monitored by those who maintain the user documentation of Dynamic Server.

Known Problems

Refer to the file ids_defects_11.50.txt for information about known problems and their workarounds. This file also describes customer-reported software defects that have been corrected in Informix Dynamic Server 11.50.xC6.

Additional Restriction on using XA Transactions with High Availability Clusters

If you are using the .NET Framework with the Microsoft Transaction Server to manage XA transactions on a high availability cluster, you must use the TransactionScope class instead of the ServiceConfig class. The TransactionScope class is available in the .NET Framework 3.5.

Installation Issues

This section lists installation issues you should be aware of prior to installation.

Installing Multiple Editions of IDS on the Same Computer

If you want to install multiple editions (such as Developer, Time-limited, or Enterprise/Workgroup) of Informix Dynamic Server on the same computer, you should install each edition in a different directory. Each installation functions as a separate product.

A Terminal Emulator Cannot be Launched during Installation on Mac OS X

During the installation of IDS on Mac OS X, you cannot automatically access the demonstration server by choosing to launch a terminal emulator. On the terminal emulator launch page of the installation program, choose None.

Do Not Install Dynamic Server and INFORMIX-SE in the Same Directory

Do not install Dynamic Server and INFORMIX-SE in the same directory (using the same value for the $INFORMIXDIR environment variable); doing so can cause security problems.

Installation on Linux x86 RHEL 4 or Higher

Installation of IBM Informix Dynamic Server might stop responding on Linux x86 RHEL 4 or higher if one of the following true:

The solution is to unset JAVAHOME or JAVA_HOME, not to use the javahome option and to unset java from the path.

Spurious Error When Invoking the JAR File Directly

If you install or uninstall by invoking the JAR file directory with the java -cp command, you will receive an 200 error. You can ignore this error.

Security Issues

This section describes security issues.

PAM Challenge Mode is not Supported with SSL

Pluggable Authentication Module (PAM) challenge mode is not supported with Secure Sockets Layer (SSL). You cannot configure PAM to issue a challenge on an onsocssl port.

LBAC and Server Utilities

You cannot use the following utilities with label-based access control:

The oncheck utility can display pages from tables or chunks, which can expose data that is protected by LBAC on a live database. Take precautions to ensure data is not exposed by misuse of this utility.

LBAC and Enterprise Replication

You cannot apply LBAC to a table participating in Enterprise Replication. Nor can you define an Enterprise Replication replicate on a table that is protected by LBAC.

Secure Installation Path

The IDS installation program and the main IDS utilities (such as oninit, onmode, and onstat) check that the path specified by $INFORMIXDIR is secure. The onsecurity utility can be used to validate that the path is secure, and diagnoses any problems. For more information about the onsecurity utility, see the IBM Informix Security Guide.

Alarm Event for Audit Log File Change

A new alarm event is generated when a new audit log file becomes active (for example, when the previous log file becomes full).

Utility Issues

This section lists issues with IDS utilities.

ISA No Longer Provided on IDS Installation Media

Informix Server Administrator is no longer provided with IDS on the installation media. ISA is now available at http://www.ibm.com/software/data/informix/downloads.html.

Administration Tools

Use any of the following tools to administer IDS:

IDS no longer supports IECC.

For more information on these tools, see the IBM Informix Migration Guide.

Recommendations for Using ON-Monitor

ON-Monitor has certain limitations, including lack of support for:

You can perform ON-Monitor tasks with the following utilities, which do not have the above limitations:

Many of these tasks can be performed by other administrative tools, such as the SQL administration API, OpenAdmin Tool for IDS, and Server Studio.

ON-Monitor and $MEDIADIR

ON-Monitor does not start if the $MEDIADIR environment variable is set.

To work around this problem perform one of the following tasks:

The onperf Utility is Not Accessibility Compliant

The onperf utility is not compatible with current screen reading programs. You can obtain the same information about database server performance statistics using the DB-Access and onstat utilities, which are compatible with screen reading programs.

High Availability and Enterprise Replication Issues

This section lists issues with high availability options and Enterprise Replication.

Workaround: Reclaiming Space from Enterprise Replication Paging Smart Large Objects

Because of a product defect, in IDS version 10.00.FC9W2, Enterprise Replication grouper paging smart large objects might not be reclaimed. These smart large objects are created while evaluating large transactions in the grouper component and are reclaimed when no longer needed. If grouper smart large objects are not reclaimed, the Enterprise Replication grouper paging smart large object space might fill up. This defect was fixed in IDS v11.50.xC5. If you used an IDS version between 11.50.xC3W1 and 11.50.xC4, run the cdr check paging command to check for outdated grouper paging smart large objects. Then run the cdr check paging -R command once to reclaim all outdated grouper paging smart large objects.

To reclaim outdated grouper paging smart large objects:

  1. Run the cdr check paging command and look at the server message log to view the results.
  2. If there are any smart large objects that need to be reclaimed, run the cdr check paging -R command.

cdr check paging Syntax:

Usage: cdr check paging [-c server] [-R]

Short Form Long Form Meaning
-R --reclaim Reclaim outdated grouper paging smart large objects

The cdr check paging command checks for outdated grouper paging smart large objects and print information in the server message log file. The cdr check paging -R command reclaims outdated grouper paging smart large objects.

Example 1: Checking for outdated grouper paging smart large objects

The following command checks for outdated grouper paging smart large objects:

$cdr check paging 
Paging smart large object checking has been scheduled. It might take some time
for this command to complete. Check the message log file for the
results of sbspclean thread processing.

If there are no outdated grouper paging smart large objects, the server message log file shows messages similar to these:

13:42:02  Advisory:no leaked ER smart large objects in sbspace:3
13:42:06  Advisory:no leaked ER smart large objects in sbspace:4

If outdated objects are found, the server message log file shows messages similar to these:

13:42:02  Advisory:found 2 leaked ER smart large objects in sbspace:3
		total bytes:102400
13:42:06  Advisory:found 2 leaked ER smart large objects in sbspace:4
		total bytes:102400

These messages indicate that there are outdated grouper paging smart large objects in sbspaces 3 and 4.

Example 2: Reclaim space used by the outdated objects

The following command reclaims the space that is used by the objects found in Example 1:

$cdr check paging -R
Paging smart large object reclamation has been scheduled. It might take some time
for this command to complete.  Check the message log file for the
results of the sbspclean thread processing.

The following messages are printed in the server message log file:

13:45:06  Advisory:deleted 2 leaked ER smart large objects  in sbspace:3
		total bytes:102400
13:45:12  Advisory:deleted 2 leaked ER smart large objects  in sbspace:4
		total bytes:102400

Adding a Dbspace On a Primary Server while SDS Servers are Online

When adding a dbspace on the primary server of a high-availability cluster that has one or more SD secondary servers, the online.log of an SD secondary server might show this error: "Assert Failed: Page Check Error". If that happens, then shut down and restart that SD secondary server. After restarting that SD secondary server, the newly added dbspace will be available and fully functional.

Inaccurate Server Version Identification for Enterprise Replication

Running multiple IDS 10.x fixpack versions as participants in an Enterprise Replication network environment may result in inaccurate server identification. For example, if you run either 10.00.xC1 or 10.00.xC3 and 10.00.xC4 as participants in an Enterprise Replication network environment, the 10.00.xC1 and 10.00.xC3 servers will identify themselves as 9.4x servers.

To prevent this malfunction, for each 10.00.xC1 and 10.00.xC3 database server, set the CDRSITES_10x environment variable cdrID to 10.00.xC4.

The cdrID is the unique identifier for the database server in the Options field of the SQLHOSTS file (i = unique_ID).

As an example, suppose that you have five IDS Version 10.00.xC1 servers whose cdrID values range from 1 through 5 (cdrIDs = 1, 2, 3, 4, and 5)

If you upgrade database server cdrID 5 to version 10.00.xC4, you must set the CDRSITES_10x environment variable for the other server cdrIDs by setting the CDR_ENV configuration parameter in the ONCONFIG file before bringing the version 10.00.xC4 database server online:

CDR_ENV CDRSITES_10x=1,2,3,4

Running Session Configuration Routines on Secondary Servers

Although you can run the session configuration routines sysdbopen( ) or sysdbclose( ) on secondary servers, those routines cannot perform operations that perform writes or inserts on read-only secondary servers.

Enterprise Replication and Connection Security

When using any of the following commands on mastered or unmastered replicates, you might encounter errors if any of the replicates restrict access to their ports (using the connection security option 'S=6'):

You can also encounter errors when creating a mastered replicate definition if the replicate restricts access to its ports.

Performing Repair Jobs with ER and HDR

If you perform a repair job that involves a database server running both Enterprise Replication and HDR, the repair job might hang if HDR failover occurs.

Enterprise Replication Cannot be Combined with LBAC

You cannot define an Enterprise Replication replicate on a table that is protected by label-based access control. Nor can you apply LBAC on a table participating in Enterprise Replication.

Caveats

The following sections describe issues and restrictions that can affect various features of version 11.50.xC6.

Server Library Names

The following database server library names have new names. These library files have a .so or .dll extension.

Library Name for 9.x Servers Name for 10.0 Server Name for 11.10 or 11.50.xC6 Server
Optical iosm09a iosm10a iosm11a
pload ipldd09a ipldd10a ipldd11a
Simple password CSM ispws09a ispws10a ispws11a
Encryption CSM iencs09a iencs10a iencs11a

Using Select Triggers with dbexport or dbschema

Disable your select triggers while performing DBEXPORT or DBSCHEMA as it can result in data corruption.

Limitations on Remote Views

Reoptimization is noticed with multiple execution of queries involving remote views. Query plans are not picked up from Statement Cache even though it is enabled.

You cannot use the INSTEAD OF triggers feature with remote views.

Limitation on Using UDRs in Distributed Transactions

User-defined routines and built-in routines, such as round(), cannot be used in distributed transactions involving Dynamic Server 9.14, 9.21, or 9.30. For Dynamic Server 9.40, 10.00, and 11, routines in distributed transactions are only supported among version 9.40, 10.00, and 11 database servers.

Case-Sensitive Name Space

If you have case-insensitive schemas, you might need to revise them because Dynamic Server 9.21 and later have a case-sensitive name space. This can affect the resolution of blobspaces and SPL names.

Limit on Logical Log File Size

Logical log files cannot exceed 1 GB on systems with a 2K page size and 2 GB on systems with a 4K page size.

INSTEAD OF Triggers Limitations

You cannot use the INSTEAD OF triggers feature with remote views.

Large File Support Limitation

IDS supports files greater than 2GB except with the DataBlade API mi_ functions.

Updating Statistics for Specific Routines

To update statistics for a specific routine, use the keyword FUNCTION or PROCEDURE instead of the keyword ROUTINE. For example, use the following statement to update statistics for a function named Perform_work():

UPDATE STATISTICS FOR SPECIFIC FUNCTION Perform_work();

Similarly, use the keyword PROCEDURE for procedures. The statement UPDATE STATISTICS FOR SPECIFIC ROUTINE Routine_name(); fails.

Change in Parameter to ALARMPROGRAM Script for Event Alarm 23

The log number for event alarm 23 is now only in the fourth parameter, and not in the third parameter.

Upgrading to IBM Informix Dynamic Server, Version 11.50.xC6

This section describes conversion and reversion issues.

Upgrading to Informix Dynamic Server 11.50.xC6

You can upgrade to Dynamic Server 11.50.xC6 from any of the following database servers:

All other database server versions require first migrating to an intermediate version. For more information, see the IBM Informix Migration Guide.

Upgrade to Snow Leopard (Mac OS X 10.6) Removes UID and GID of Existing IBM Informix Dynamic Server Installations

When you upgrade the operating system of a Mac OS X 10.5 computer hosting IBM Informix Dynamic Server (IDS), Snow Leopard often takes ownership of the user identifier (UID), the group identifier (GID), or both that was assigned to the user and group informix as part of the product installation. This causes initialization or startup of IDS to fail, with a message that the required user informix or group informix is not present.

To enable startup of IDS in this situation, you must restore the user and group informix without overwriting the UID and GID with which Snow Leopard completes internal OS operations. A script is available in the installation media that assigns user and group informix to an available UID and GID that Snow Leopard does not use. You might need to perform additional steps before and after running the script to fully fix your IDS setup.

Prerequisites:

To initialize or start IDS with a new UID and GID on Snow Leopard:

  1. If there are instances of an Informix product running, stop them with the onmode utility.
  2. Run the fixslid.sh script. The script is located in $INFORMIXDIR/etc.
    Note: : If you have multiple installations in different directories that need UID and GID adjustments, change the INFORMIXDIR, INFORMIXSERVER, and ONCONFIG environment variable settings as needed for each installation and run the script.
    Tip:
    • fixslid.sh -help displays the online help message
    • fixslid.sh -password my_password specifies the password for the new user informix account that is created by the script (enter your real password in place of my_password)
  3. Reassign owner of all the files that were owned by user and group informix but were not part of the Informix dbspaces and $INFORMIXDIR.

    Example: You exported a database to a file called db1.exp and set it up as user informix. However, you did not deploy db1.exp with IDS. Therefore, you need to change permissions of the file manually to user and group informix using the chown and chgrp commands. Alternatively, you can use the Mac OS Finder utility to change permissions of db1.exp.

  4. Start the database server.
  5. If you did not specify a password for user informix when you ran the fixslid.sh script, change the default case-sensitive password (New.pass) to a secure password.

Special Considerations when Upgrading from Versions of IDS Older Than 9.40

If you are upgrading from IDS Version 9.21, 9.30, or 7.31, you should be aware of some changes in functionality that might affect your upgrade.

Chunk Format Change in IDS 9.4 and Later

Starting with version 9.40, IDS uses the following chunk features that cannot be reverted:

These features are enabled by default in version 9.40 and later, unless you just converted from a version of Dynamic Server that is prior to version 9.4; in that case, chunks that are greater than 2 GB are not yet enabled.

To stage a migration to support large chunks and large offsets:

  1. To support creating new chunks and offsets greater than 2 GB, run onmode -BC 1.
  2. Perform a complete system level-0 backup.
  3. Test your data in the onmode -BC 1 mode.
  4. If you need to revert, drop any storage spaces that use the new chunk features.
  5. When you are satisfied that your data has converted correctly and you no longer need to revert, run onmode -BC 2 to put the server in large-chunk-only mode.

    After running onmode -BC 2, all page writes are in the new format, including those to chunks that were created prior to version 9.40 and reversion is no longer supported. After support for large chunks is enabled, it cannot be disabled.

  6. Perform a complete system level-0 backup.

Library Pathname Changes

Dynamic Server 9.40 and later do not install the following libraries in the /usr/lib directory on UNIX or Linux platforms:

Changes in Functionality when Upgrading from IDS 7.31

If you are upgrading from IDS Version 7.3x, the following changes in functionality might require changes to your applications, database schema, or administration scripts:

Save System Catalog Information

If your current database server instance uses secure-auditing masks or external spaces, and you want to preserve the associated catalog information, you must unload these system catalog tables before you continue. Execute the following command to unload the system catalog tables:

$INFORMIXDIR/etc/smi_unld

When the smi_unld utility finishes unloading the information, the utility displays instructions for reloading the information. Save these instructions. After you complete the reversion and brought up your database server, you can reload the data that you preserved. Follow the instructions given with the smi_unld utility for reloading the information. Typically, you should execute the following command:

$INFORMIXDIR/etc/smi_load $INFORMIXDIR/etc/

Migrating from 32-bit to 64-bit with Collection Types that use the SMALLINT Data Type

If you are moving your database from a 32-bit computer to a 64-bit computer and your database contains collection types that use the SMALLINT data type, you must take extra steps to prevent memory corruption. Collection types are the ROW, LIST, SET, and MULTISET data types. This restriction applies if you are upgrading from an older version of IDS on 32-bit to IDS 11.50 on 64-bit or if you are moving from 32-bit to 64-bit on IDS 11.50.

To migrate a database with SMALLINT collection types from 32-bit to 64-bit, use one of the following methods:

Limits in IBM Informix Dynamic Server

The following tables list selected capacity limits and system defaults for this release of IBM Informix Dynamic Server. Some limits and capabilities might be restricted in certain editions of IDS. See your license for restrictions.

System-Level Parameters Maximum Capacity per Computer System
IBM Informix Dynamic Server systems per computer (Dependent on available system resources) 255
Maximum number of accessible remote sites Machine specific
Maximum virtual shared memory segment (SHMVIRTSIZE) Machine specific

Table-Level Parameters (based on 2K page size) Maximum Capacity per Table
Data rows per fragment 4,277,659,295
Data pages per fragment 16,775,134
Data bytes per fragment (excludes Smart Large Objects (BLOB, CLOB) and Simple Large Objects (BYTE, TEXT) created in Blobspaces) 33,818,671,136
Binary Large Object BLOB/CLOB pages 4 TB
Binary Large Objects TEXT/BYTE bytes 4 TB
Row length 32,767
Number of columns 32K
Key parts per index 16
Columns per functional index 102 (for C UDRs) 341 (for SPL or Java UDRs)
Maximum bytes per index key (for a given page size):
2K page size =    387
                                                                                   
4K page size =    796

8K page size =  1615    
                                                                            
12K page size =  2435    
                                                                            
16K page size =  3254

Access Capabilities Maximum Capacity per System
Maximum databases per Dynamic Server system 21 million
Maximum tables per Dynamic Server system 477,102,080
Maximum active users per Dynamic Server (minus the minimum number of system threads) 32K user threads
Maximum active users per database and table (also limited by the number of available locks, a tunable parameter) 32K user threads
Maximum number of open tables per Dynamic Server system Dynamic allocation
Maximum number of open tables per user and join Dynamic allocation
Maximum locks per Dynamic Server system and database Dynamic allocation
Maximum number of page cleaners 128
Maximum number of recursive synonym mappings 16
Maximum number of tables locked with LOCK TABLE per user 32
Maximum number of cursors per user Machine specific
Maximum Enterprise Replication transaction size 4 TB
Maximum chunk size
4 TB with 2K page size
8TB with 4K page size
Maximum number of chunks 32,766
Maximum number of 2K pages per chunk 2 billion
Maximum number of open Simple Large Objects (applies only to TEXT and BYTE data types) 20
Maximum number of B-tree levels 20
Maximum amount of decision support memory Machine specific
Maximum size of a Dynamic Server instance 8 PB
Maximum size of an SQL statement 64 K
Utility support for large files 17 billion GB
Maximum number of storage spaces (dbspaces, blobspaces, sbspaces, or extspaces) 2047
Maximum size of dbspaces and sbspaces
4 TB with 2K page size
8TB with 4K page size
Maximum number of partitions in a dbspace (assuming only 4-bit bitmaps)
1048431 with 2K page size
1048445 with 4K page size

IBM Informix Dynamic Server System Defaults

Table lock mode Page
Initial extent size 8 pages
Next extent size 8 pages
Read-only isolation level (with database transactions) Committed Read
Read-only isolation level (ANSI-compliant database) Repeatable Read
High-availability cluster secondary server isolation level Dirty Read

ON-Monitor Statistics

Number of displayed user threads 1000
Number of displayed chunks 1000
Number of displayed dbspaces 1000
Number of displayed databases 1000
Number of displayed logical logs 1000

Notices

This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not grant you any license to these patents. You can send license inquiries, in writing, to:

IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:

Intellectual Property Licensing
Legal and Intellectual Property Law
IBM Japan Ltd.
1623-14, Shimotsuruma, Yamato-shi
Kanagawa 242-8502 Japan

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:

IBM Corporation
J46A/G4
555 Bailey Avenue
San Jose, CA 95141-1003
U.S.A.

Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.

The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

All statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only.

All IBM prices shown are IBM's suggested retail prices, are current and are subject to change without notice. Dealer prices may vary.

This information is for planning purposes only. The information herein is subject to change before the products described become available.

This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.

COPYRIGHT LICENSE:

This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs.

Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows:

© (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs.

© Copyright IBM Corp. _enter the year or years_. All rights reserved.

If you are viewing this information softcopy, the photographs and color illustrations may not appear.

Trademarks

IBM, the IBM logo, and ibm.com® are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at http://www.ibm.com/legal/copytrade.shtml.

Adobe, the Adobe logo, and PostScript® are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.

Intel®, Itanium®, and Pentium® are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Microsoft®, Windows, and Windows NT® are trademarks of Microsoft Corporation in the United States, other countries, or both.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Other company, product, or service names may be trademarks or service marks of others.

Contact support: http://www.ibm.com/software/data/informix/ids/support/

© Copyright IBM Corp. 1996, 2009