InterSystems Documentation 
Caché and Ensemble Maintenance Kit Release Notes


This document provides a list of the changes between versions 2008.2.4 and 2008.2.5 for Caché and Ensemble.

Topics include:


General Announcements
Upgrading From Prior Released Versions
Customers running on any prior released version of Caché may upgrade to this version of Caché during installation. When upgrading across multiple versions, intermediate upgrade steps may be necessary depending on the inter-release compatibility requirements. The release notes for the intervening releases will contain that information.

After each upgrade step, the following conditions apply:

Upgrading ECP Configurations
The following guidelines apply to the process of upgrading ECP configurations:
If you have questions or concerns about how to upgrade your ECP configuration, please contact InterSystems Worldwide Customer Support.

Restricted Rights Legend
Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013.
InterSystems Corporation
One Memorial Drive
Cambridge, MA 02142
When acquired by the Government, commercial computer software and related documentation bearing this legend are subject to the following:

  1. Title to and ownership of the software and documentation shall remain with the Contractor.
  2. Use of the software and documentation shall be limited to the facility for which it is acquired.
  3. The Government shall not provide or otherwise make available the software or documentation, or any portion thereof, in any form, to any third party without the prior written approval of the Contractor. Third parties do not include prime contractors, subcontractors and agents of the Government who have the Government's permission to use the licensed software and documentation at the facility, and who have agreed to use the licensed software and documentation only in accordance with these restrictions. This provision does not limit the right of the Government to use software, documentation, or information therein, which the Government has or may obtain without restrictions.
  4. The Government shall have the right to use the computer software and documentation with the computer for which it is acquired at any other facility to which that computer may be transferred; to use the computer software and documentation with a backup computer when the primary computer is inoperative; to copy computer programs for safekeeping (archives) or backup purposes; and to modify the software and documentation or combine it with other software. Provided that the unmodified portions shall remain subject to these restrictions.
END OF LEGEND

InterSystems News, Alerts and Advisories
From time to time, InterSystems publishes items of immediate importance to users of our software. These include alerts, mission critical issues, important updates, fixes, and release announcements.

The most current list can be obtained from the InterSystems Website.

Users should check this list periodically to obtain the latest information on issues that may have an effect on the operation of their site.


Online Documentation
As a convenience to our users, InterSystems provides online access to documentation for recent product versions at the InterSystems Website. From the home page, choose the Support & Education tab, then choose the Support menu item for the product you are interested in, for example, Caché Support. Links to the available documentation can be found on the support page for each product.

Description of a Change Report
To help you assess the impact of this maintenance kit on your applications, the remaining topics in this document describe each modification in detail.
If you need assistance evaluating the effect on your application(s), system(s), or related plans, please contact the InterSystems Worldwide Support Center:


Change Reports for This Maintenance Kit

Category: Config Mgr
Platforms: All
DevKey: CFL1533
Summary: Fix loop in purging cache.cpf old backup files

Description:

This change corrects a problem where Caché would loop during shutdown attempting to purge configuration backup files older than one year.

Category: Ensemble
Platforms: All
DevKey: HCR099
Summary: Ensemble upgrades to preserve previous CSP application settings

Description:

When upgrading Ensemble, the application definitions for each of the Ensemble-enabled namespaces was being over-written. In the case where the user had modified settings such as resource required, matching roles, description, timeout, these modifications would be lost upon an upgrade.

Now if the CSP application for the Ensemble Portal of a namespace already exists, the upgrade process opens its definition and only sets the properties listed below, keeping the previous values for all other properties:

The upgrade process now also logs distinct messages for the case when a CSP application is created and when it is updated. Only the properties that are explicitly set are listed in the installation/upgrade log.


Category: Installation.Windows
Platforms: All
DevKey: ALE1791
Summary: Update VC redistributables installation to include ATL security update

Description:

Microsoft VC2008 SP1 redistributable packages have been updated to include ATL security update.

Category: Migration.TSQL
Platforms: All
DevKey: DLP2291
Summary: TSQL - replace stub in %XSQL.Dictionary so that error messages are not lost

Description:

This change replaces the method called when errors are detected by the TSQL parser so that they are reported accurately.

Category: Networking.ECP
Platforms: All
DevKey: GK713
Summary: Fixed an ECP hang

Description:

This change corrects a situation where, in rare conditions, the ECP daemons might be out of sync and search for locally cached blocks incorrectly causing an unexpected delay in responding to various requests.

Category: Object.XML
Platforms: HP Itanium
DevKey: JN781
Summary: Correct workaround of Virtual Memory Deallocation on HP Itanium

Description:

On HP-UX Itanium virtual memory was not being deallocated correctly. This became apparent when using %XML.Adaptor::XmlExportToString().

This is change corrects that error.


Category: SQL.Query Processing
Platforms: All
DevKey: AK742
Summary: Recompute "needed for output" flag

Description:

An optimization was added identifying cases where fields in certain views mentioned in a query were not actually essential to processing the query, resulting in improved access path selection and improved run-time performance for certain queries.

Category: SQL.SQLFiler/TableCompiler
Platforms: All
DevKey: DPV3473
Summary: SQL Filer: Perform immediate unlock of shared lock acquired on fkey referenced row after this row has been filed

Description:

When inserting or updating a row into a table that has a foreign key, Caché acquires a lock on the referenced row that is released when the transaction ends. If there are many rows inserted or updated in a single transaction, and many foreign keys on the table, this could hold a lot of locks in the lock table. This lock is required to check the referential integrity of the foreign key constraint and ensure the row still exists from the time the lock is acquired until the time this row is inserted or updated.

With this change, Caché will no longer hold the lock for the duration of the transaction, but will release the lock after the row has been inserted or updated. By this time, referential integrity is assured and the row in the referenced table cannot be updated or deleted during the course of this transaction because the referential action on the foreign key constraint will prevent an update or delete on the referenced table from occurring. Since this process still has a lock on this table, a referential action of SET NULL, SET DEFAULT, or CASCADE cannot occur until the updating/deleting process can acquire the lock on this table.


Category: System
Platforms: All
DevKey: GK682
Summary: The error stack info builder to restore string and arg stack on errors

Description:

This change corrects a situation where the processing of an error could overflow the space allotted for the stack and cause Caché to abort.

Category: System
Platforms: All
DevKey: JLC1179, JLC1188, JLC1190, JLC1286, JLC1287, JLC1291, JLC1312
Summary: Reorganize cpu and core detection/counting functions

Description:

This change updates the functions used to detect and count cpus and cores to account for new chipsets, hyperthreading, and other hardware details. Specifically,


Category: System
Platforms: All
DevKey: JO2274
Summary: Release retained global buffer in use cmd before we issue any system calls

Description:

This change resolves a defect where a process could get blocked in a USE command by the operating system and cause a Caché hang if it has retained ownership of a global buffer.

Category: System.I/O
Platforms: OpenVMS
DevKey: RFD477
Summary: Fix check for OPEN pipe device on OpenVMS

Description:

This change fixes a situation where trying to OPEN a TCP device with the letter "Q" in the hostname was failing with an <UNIMPLEMENTED> error. This was due to a faulty check for a "pipe" on VMS.

Category: System.Lock
Platforms: All
DevKey: SML1150
Summary: Fix missing delock due to lock count update is delayed

Description:

This change fixes a problem where a delock command (L -^A) might skip its operation and leave the entry in lock table.

Category: System.Monitoring
Platforms: HP-UX
DevKey: RFD471
Summary: Fix Buttons ps -efw command for HP-UX

Description:

The Cache Diagnostic Report was using an unsupported option for the process list on HP-UX. This has been fixed.