These release notes contain additional information not found in the product manuals that are included with the product.
To help you prepare to install or upgrade your IBM® Informix® Dynamic Server product, follow these steps:
You should review these notes for critical information.
The machine notes contain important information about platform-specific issues. Read the machine notes before installation.
The IBM Global Security Kit (GSKit) is installed automatically with IBM Informix Dynamic Server. Read the GSKit readme for more information.
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.
http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp
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.
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:
Visit the IDS 11 Web site to:
Access the IDS 11 Launch Site at:
http://www.ibm.com/informix/ids
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.
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
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.
IBM Informix Dynamic Server, Version 11.50.xC6DE contains the following new functionality:
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.
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.
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 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.
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.
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.
The OpenAdmin Tool (OAT) Version 2.27 has the following enhancements:
See the OpenAdmin Tool help for more information.
The Schema Manager plug-in Version 1.2 has the following enhancements:
See the Schema Manager plug-in for OAT help, for more information.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
IBM Informix Dynamic Server, Version 11.50.xC5DE contains new functionality in the following areas:
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.
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.
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.
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.
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.
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.
The ER plug-in Version 2.23 has the following enhancements:
See the OpenAdmin Tool help for more information.
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.
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.
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.
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.
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.
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.
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.
IBM Informix Dynamic Server, Version 11.50.xC4DE contains new functionality in the following areas:
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.
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.
The OpenAdmin Tool for IDS Version 2.24 has the following enhancements:
See the OpenAdmin Tool help for more information.
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.
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.
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.
Event alarms are now generated in the following situations:
This information is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
IBM Informix Dynamic Server, Version 11.50.xC3DE contains new functionality in the following areas:
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
IBM Informix Dynamic Server, Version 11.50.xC2DE contains new functionality in the following areas:
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.
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.
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.
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.
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:
This feature is documented in the IBM Informix Dynamic Server Enterprise Replication Guide.
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.
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.
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.
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
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.
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.
The OpenAdmin Tool for IDS Version 2.22 has the following enhancements:
See the OpenAdmin Tool release notes for more information.
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.
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.
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.
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.
IBM Informix Dynamic Server, Version 11.50.xC1DE contains new functionality in the following areas:
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.
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.
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.
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.
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.
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.
The IDS configuration file, onconfig.std, has been improved in the following ways:
grep "MSGPATH" onconfig.std # MSGPATH - The name of the IDS message log file MSGPATH $INFORMIXDIR/tmp/online.logWhereas, 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.
| 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.
| 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.
The OpenAdmin Tool for IDS has the following enhancements:
See the OpenAdmin Tool for IDS release notes for more 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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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:
https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?lang=en_US&source=swg-informixfpd
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/
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:
The newest release of the Spatial DataBlade module that supports the storage and manipulation of spatial data in the database.
Simple tools to enable the loading and unloading of spatial data into an IDS database.
A lightweight visualization tool for spatial data. Enables the panning, zooming, and querying of colorful maps automatically generated from the data.
The standard cryptography library for this release is IBM Crypto for C (ICC). This library satisfies FIPS compliance.
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:
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.
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.
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.
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.
This section lists installation issues you should be aware of prior to installation.
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.
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 (using the same value for the $INFORMIXDIR environment variable); doing so can cause security problems.
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.
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.
This section describes security issues.
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.
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.
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.
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.
A new alarm event is generated when a new audit log file becomes active (for example, when the previous log file becomes full).
This section lists issues with IDS utilities.
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.
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.
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 does not start if the $MEDIADIR environment variable is set.
To work around this problem perform one of the following tasks:
cd $INFORMIXDIR mv msg/en_us/0333/n4gl.iem msg/en_us/0333/4gl.iem mv msg/en_us/0333/n4glusr.iem msg/en_us/0333/4glusr.iem mv msg/en_us/0333/nforms.iem msg/en_us/0333/forms.iem mv msg/en_us/0333/nformbld.iem msg/en_us/0333/formbld.iem
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.
This section lists issues with high availability options and Enterprise Replication.
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:
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.
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.
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
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.
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
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.
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.
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.
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.
The following sections describe issues and restrictions that can affect various features of version 11.50.xC6.
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 |
Disable your select triggers while performing DBEXPORT or DBSCHEMA as it can result in data corruption.
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.
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.
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.
Logical log files cannot exceed 1 GB on systems with a 2K page size and 2 GB on systems with a 4K page size.
You cannot use the INSTEAD OF triggers feature with remote views.
IDS supports files greater than 2GB except with the DataBlade API mi_ functions.
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.
The log number for event alarm 23 is now only in the fourth parameter, and not in the third parameter.
This section describes conversion and reversion issues.
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.
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:
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.
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.
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:
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.
Dynamic Server 9.40 and later do not install the following libraries in the /usr/lib directory on UNIX or Linux platforms:
If you use an optical storage manager, set the OPTICAL_LIB_PATH configuration parameter in the ONCONFIG file to the location of the optical storage manager library. For more information, see the IBM Informix Optical Subsystem Guide.
If you use customized files with the High-Performance Loader, set the HPL_DYNAMIC_LIB_PATH configuration parameter in the plconfig file to the location of the custom-code shared library. For more information, see the IBM Informix High-Performance Loader User's Guide.
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:
Starting with IDS 9.x, some system catalog tables contain columns of user-defined built-in opaque data types, which cannot be queried remotely. Remote queries that issue a SELECT * statement on these system catalog tables will fail. Queries that reference columns of user-defined types will also fail. To query system catalog tables remotely, you must specify non-UDT columns in the SELECT statement.
For example:
SELECT idxname, idxtype FROM remdb@remserver:sysindices WHERE tabid=100;
For Dynamic Server 7.x, sysindexes is a table, but starting with Dynamic Server 9.x, sysindexes is a view on the sysindices table. Remote queries on sysindexes will always fail due to the way views are materialized. Run remote queries on specific non-opaque columns of the sysindices table instead of on sysindexes.
This caveat for remote queries on opaque data types is also applicable for queries spanning multiple databases on the same server instance.
If you are migrating from Dynamic Server 7.3x, the number of columns of the VARCHAR or NVARCHAR data type per table for Dynamic Server 11.50.xC6 has been reduced from 231 to 195, within a row size of 32762 bytes and based on a page size of 2K. The same 195-column restriction also applies to BYTE and TEXT columns.
On platforms where the page size is 4K (Windows and AIX), the limit for the number of columns limit is approximately 450 columns.
Before you upgrade to Dynamic Server 11.50.xC6, ensure that your tables comply with this restriction.
Dynamic Server 11.50.xC6 has a limit of 341 parameters for each stored procedure.
The same limit on the number of parameters also applies to UDRs written in the Java language. UDRs written in the C language can have no more than 102 parameters.
By default, all new indexes that the CREATE INDEX statement creates in Dynamic Server Version 9 and later are detached and stored in separate tblspaces from the data. Indexes created in version 7.31, however, remain attached until you rebuild them.
You can attach only B-tree indexes that are non-fragmented and that are on non-fragmented tables (the version 7.31 behavior). All other indexes, including extensibility related indexes such as R-trees and UDT indexes, must be detached.
You cannot revert detached indexes to version 7.31. To enable reversion to version 7.31, retain the version 7.31 attached index behavior by setting the environment variable DEFAULT_ATTACH in the application environment.
A future release of the database server might not support the DEFAULT_ATTACH environment variable, which changes the database server default mode for creating indexes from detached to attached.
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/
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:
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 |
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:
For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:
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:
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.
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