resources

December 5, 2006 – Caché 5.1 and >2 GB Shared Memory

InterSystems Worldwide Response Center (WRC) has determined that the previous alert dated November 9, 2006 also applies Caché 5.1. Please review the November 9, 2006 alert for details and recommendations.

November 9, 2006 – Cache’ 5.2, Ensemble 4.0 and >2 GB Shared Memory

If you have any questions regarding this advisory, please contact the Worldwide Response Center at support@intersystems.com.


November 9, 2006 – Cache’ 5.2, Ensemble 4.0 and >2 GB Shared Memory

UPDATE: December 5, 2006 – InterSystems Worldwide Response Center (WRC) has determined that the previous alert dated November 9, 2006 also applies Caché 5.1.

InterSystems Worldwide Response Center (WRC) has identified a defect in Caché 5.2 and Ensemble 4.0 that can cause unpredictable behavior for instances configured with more than 2GB of shared memory.

This defect is present in Caché version 5.2 on all platforms and operating systems.

This defect is present in Ensemble version 4.0 on all platforms and operating systems.

Caché shared memory includes: global buffers, routine buffers, gmheap, lock table, network structures and other internal uses.

The risk from this defect is high. Observed incorrect behavior includes inability to run the System Management Portal and access violations at startup. Other failures modes are possible. InterSystems strongly recommends that any system running a Caché 5.2 instance or Ensemble 4.0 should install the corrections to this defect (see next paragraph).

Four corrections exist for various aspects of this defect; they are identified as SAP643, SAP663, SAP686 and SAP696. A maintenance release of Caché designated Caché 5.2.3 will be available within the next few weeks. The corrections can also be ordered in an Ad Hoc distribution from the WRC.

A related correction, SAP672, addresses a problem with an incorrect message in startup log files. The result is a message indicating a very low number of buffers allocated even though the number of buffers actually allocated is correct. This problem is limited to 64-bit UNIX platforms.

If you have any questions regarding this advisory, please contact the Worldwide Response Center at support@intersystems.com.


October 19, 2006 – Spool Device <MAXSTRING> Error

InterSystems Worldwide Response Center (WRC) has identified a defect in the handling of the spool device (device number 2), which can result in a <MAXSTRING> error. This defect is present in Caché version 5.2 on all platforms and operating systems.

The incorrect behavior caused by this defect is a <MAXSTRING> error when a process writes a null string (“”) to the spool device. Not all applications make use of the spool device, but those that do are very likely to encounter this problem.

The correction for this defect is identified as KMK478 and will be included in future releases of Caché. It can also be ordered from the WRC as an Ad Hoc distribution.

If you have any questions regarding this advisory, please contact the InterSystems Worldwide Response Center (WRC).

If you have any questions regarding this advisory, please contact the Worldwide Response Center at support@intersystems.com.


October 13, 2006 – ODBC Client return wrong Stream data

A problem has been corrected where the Caché ODBC client would return wrong stream data. The problem was in a conversion of the stream’s ID value from Hex to decimal and would start to happen with Stream ID values of 130 or greater.

Where:
Caché 5.2, Ensemble 4.0

Symptoms:
If you select a Stream field from a table where the Stream ID equaled 130 we would return a point to stream 63. This is just one example, the problem happens for other values of the Stream ID.

Cause:
The value of the Stream ID was getting converted to Multi Bit when it should have been a binary value. This caused the server to return the wrong stream.

Solution:
InterSystems has a patch available that will prevent this problem from happening. If you would like to receive this patch please contact Support and reference Dev Change JCN723. This correction will be part of Caché 2007.1

If you have any questions regarding this advisory, please contact the Worldwide Response Center at support@intersystems.com.


October 2, 2006 – Correction to SQL NOT with AND or OR

A problem has been corrected where SQL queries containing NOT in the WHERE clause in conjunction with AND or OR could return the wrong results.

Where:
Caché 5.2, Ensemble 4.0

Symptoms:
Query that match the following format:
SELECT f1 from Table1 where NOT (… AND…)
SELECT f1 from Table1 where NOT (… OR …)

Cause:
A bug fix that overhauled the way negation was handled in SQL statements was incompletely integrated into Cache 5.2, which introduced this problem.

Solution:
InterSystems has a patch available that will prevent this problem from happening. If you would like to receive this patch please contact Support and reference Dev Change JLF090 and JLF111. This correction will be part of Caché 2007.1 and Ensemble 4.0.1

If you have any questions regarding this, please contact the InterSystems Worldwide Response Center (WRC) at Worldwide Response Center.


September 13, 2006 – 5.0.21 Release Note Discrepancy

The Caché 5.0.21 maintenance kit release notes incorrectly identify several corrections as being included in the distribution.

This is applies to Caché 5.0.21 on all platforms and operating systems.

The following changes are documented by the release notes but are not present in the distribution.

AND706

HYY1173

JLC789

MAK1496

SML634

ODBC: Clear cached query on disconnect

Address an issue of out-of-order cluster journal sequence

Correct write daemon hang on USPARC

XML import did not clear temporary global structure

Fix lock memory corruption

InterSystems Worldwide Response Center (WRC) recommends that customers running Caché 5.0.21 review the listed changes to determine if their omission poses a risk.  Additional information on the changes can be found in the Caché 5.0.21 maintenance kit release notes.  In particular HYY1173 was the subject of an alert last year and should be given careful consideration:

November 21, 2005 – Caché Cluster Journal Corruption

Any of these corrections can be requested as an Ad Hoc distribution by contacting the WRC.

If you have any questions regarding this, please contact the InterSystems Worldwide Response Center (WRC) at Worldwide Response Center.


April 6, 2006 – Important ECP Correction

InterSystems has identified a defect in ECP (Enterprise Cache Protocol) that could cause serious problems. The likelihood of encountering this defect is extremely low but the potential impact is high.

Caché versions 5.0 through 5.0.21 and 5.1 on all operating systems and platforms are exposed with the exception of HP/UX on PA-RISC.

The defect can occur only on multiprocessor systems.  This can occur if either the application server or the database server or both are multiprocessor systems.  The most likely result is an application server process failure with a core dump.  Other symptoms can include process hangs, an invalid global name appearing on the database server and lost data.  Although the likelihood of encountering this defect is small, it increases with ECP activity and processor speed.

InterSystems WRC (Worldwide Response Center) recommends that this correction, identified as TR987, be installed at sites using ECP. The correction will be included in Caché 5.2 and higher.  It may also be ordered in an Ad Hoc distribution from the WRC.

If you have any questions regarding this advisory, please contact the Worldwide Response Center at (617) 621-0700 or support@intersystems.com.


March 16, 2006 – Caché Journal Restore Potential for Incorrect Data

InterSystems Worldwide Response Center (WRC) has identified a defect in journal restore that could result in incorrect data.

The following versions of Caché are at risk on all platforms and operating systems:

Caché 4.1.16
Caché 5.0.5 through 5.0.21
Caché 5.1

A necessary condition for this defect to affect a global is that the collation of the global must be different from the default collation of the database where it is being restored. If a database only contains globals with default collation then there is no risk of encountering this defect. See the end of this alert for notes on checking collation.

If triggered, the defect results in journal transactions being applied out of order so that the resulting database may contain out of date information.

This defect can only be encountered during journal restore OR during journal recovery after an abnormal shutdown1. Normal database operations are not at risk. Caché shadowing operations are not at risk.

The correction for this defect is identified as HYY1193 and is included in Caché 5.2 and higher. It may also be ordered in an Ad Hoc distribution from the WRC.

1 Journal recovery is only at risk for versions 4.1.16 and 5.0.5 through 5.0.15

Checking Collation for specific databases or globals:

4.1.x and 5.0.x

For databases: In Control Panel click on the Local Databases folder. This will display a number of columns with info about the databases. One of the columns is collation.

For globals: In Control Panel open the Local Databases folder, choose the database you want, right click on the global in question and choose properties.

5.1.x:

For databases: System Management Portal: Home -> Configuration -> Local Databases – > Database Properties -> Edit

For globals: System Management Portal: Home -> Data Management -> Globals

If you have any questions regarding this advisory, please contact the Worldwide Response Center at (617) 621-0700 or support@intersystems.com.


March 10, 2006 – Caché Direct 5.1 client to a Caché 5.0 server

A problem has been corrected where a Caché Direct connection from a Caché 5.1 client to a Caché 5.0 Unicode Server would not work.

Where:

Caché 5.1 Client Code with Caché 5.0 Server

Symptoms:

– On Windows 2000 SP4: set both user and system locale to Korean, then install Caché 5.0 and Caché 5.1 in any order. Explorer and Configuration Manager will not work.

– If you now change both user and system locale to English and reboot, everything works. Changing locales to Korean makes it stop working again.

Cause:

The problem is an incompatibility between the 5.1 client and the 5.0 Unicode server on non XP Windows systems.

Solution:

InterSystems has a patch available that will prevent this problem from happening. If you would like to receive this patch please contact Support and reference Dev Change RAW617.

If you have any questions regarding this advisory, please contact the Worldwide Response Center at (617) 621-0700 or support@intersystems.com.


March 2, 2006 – Element Indices not properly built in 5.1

A problem has been corrected where an Elements Index would not be properly built.

Where:
Caché 5.1

Symptoms:
Code making use of Element Indices could return the wrong results.

If you have an Elements Index defined on a property, for example in the Sample.Company class you could have the following index for the Mission Property.

Property Mission As %String(MAXLEN = 200, POPSPEC = “Mission()”);

Index MissionWords On Mission(Elements);

For this type of index you need to write a ClassMethod called MissionBuildValueArray that tells Caché how to parse the Mission into the indexed values.

ClassMethod MissionBuildValueArray(value, array) As %Status
{
New ptr,subval
For ptr = 1:1:$Length(value,” “) Set subval=$Piece(value,” “,ptr) Set:subval’=”” array(ptr)=subval
Quit $$$OK
}

Caché takes the returned array and uses the data values to populate the elements index.

Cause:
In the Caché internal code that woks with the returned array we were using the key value instead of the data value in the index. This is not a commonly used feature. These indices are not used by Caché SQL . They could be used for a Non SQL free text search, or some other hand codes tool.

Solution:
InterSystems has a patch available that will prevent this problem from happening. If you would like to receive this patch please contact Support and reference Dev Change JLF044. This correction will be part of Caché 5.2.

If you have any questions regarding this advisory, please contact the Worldwide Response Center at (617) 621-0700 or support@intersystems.com.


February 27, 2006 – <UNDEFINED> during BuildIndices on 5.1

A problem has been corrected where you could get an <UNDEFINED> error while running %BuildIndices.

Where:
Caché 5.1

Symptoms:
If the %%CLASSNAME pseudo-property (generated by default storage for polymorphic dispatch) is stored in a NODE data structure by itself then a bug in %BuildIndices will cause an <UNDEFINED> error to be reported and %BuildIndices will fail.

Cause:
The storage of %%CLASSNAME in the zero node was the default prior to Caché 5.0. When upgrading to 5.0 this default node was explicitly created in the storage definition to preserve compatibility with existing data. In 5.1 the %BuildIndices generator was rewritten and the %%CLASSNAME was assumed to always exist. However, filing %%CLASSNAME was suppressed in the extent root class. That leads to the <UNDEFINED> error when running %BuildIndices in 5.1 and later.

Solution:
InterSystems has a patch available that will prevent this problem from happening. If you would like to receive this patch please contact Support and reference Dev Change DLP1584. This correction will be part of Caché 5.2.

If you have any questions regarding this advisory, please contact the Worldwide Response Center at (617) 621-0700 or support@intersystems.com.


January 19, 2006 – Caché Shadowed Data Problems

InterSystems Worldwide Response Center (WRC) has identified a defect which could lead to incorrect data on a Caché shadowing destination.

This defect is present in all currently released Caché 5.0.x versions beginning with 5.0.13. It is not present in Caché 4.1.x or Caché 5.1.x versions. All platforms and operating systems are at risk.

This defect affects Caché compatible-mode shadowing only.

There is no risk to data on the shadowing source system, only data on the destination systems is at risk.

As a result of this problem, the shadow databases may have missing data, incorrect subscripts, incorrect data, or database degradation. This problem may occur without a problem being reported in shadowing.

If you are using Caché compatible-mode shadowing InterSystems recommends implementation on one of the following configuration changes until a corrected Caché version can be installed. Either of these changes will eliminate the risk of this defect:

  • Best Option – Use Caché fast-mode shadowing. Fast-mode shadowing is not at risk and it is the generally recommended mode of shadowing for all shadow environments where it can be used. Compatible-mode shadowing should only be used when the shadowing is done between different major versions of Caché or between platforms of different endian.
  • If you are using shadowing in an environment that requires the use of compatible mode: on the shadowing destination set global node ^SYS(“shdwcli”,sys,”prefetch”)=1 in the %SYS namespace where ‘sys’ is the name of shadow. Once this global node is set, shadowing must be restarted. You will notice an increase in the number of processes running SHDWCBLK routine.

The correction to this problem is identified as HYY1201 and will be included in an upcoming maintenance release of Caché 5.0.x. It is also available in an Ad Hoc distribution.

If you have any questions regarding this, please contact the InterSystems Worldwide Response Center (WRC).


January 17, 2006 – Potential Database Degradation

InterSystems Worldwide Response Center (WRC) has identified a defect that could result in database corruption.

The defect is present in all currently released versions of Caché. The risk exists for all platforms and operating systems.

The problem is very specific and requires the interaction of two Caché processes to trigger. One process must modify a global attribute using one of the utilities listed below at the same time a second process kills the same global at the top level.

Utilities with risk:
Control Panel-> Local Databases-> Global Properties

5.1 System Management Portal-> Configuration-> Local Databases-> Global Properties

SetKeepType^%DM()
SetJournalType^%DM()
SetProtectState^%DM()
SetCollationType^%DM()
ChangeDatabaseGrowthBlock^%DM()
PutGlobalDirectoryInfo^%DM()
The WRC recommends discontinuing use of the above utilities until a Caché version containing the correction is installed.

In Caché 5.0.x the correction for this defect is in two parts identified as SML669 and CFL1376. CFL1376 is included in Caché 5.0.19 and higher versions. SML669 is targeted for maintenance kit 5.0.22.

In Caché 5.1.x only SML669 is required to correct this defect. SML669 is targeted for maintenance kit 5.1.1.

SML669 and CFL1376 may also be requested in an Ad Hoc distribution.

If you have any questions regarding this, please contact the InterSystems Worldwide Response Center (WRC).