13.07.2015 Views

Caché Upgrade Checklists - InterSystems Documentation

Caché Upgrade Checklists - InterSystems Documentation

Caché Upgrade Checklists - InterSystems Documentation

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Caché</strong> 2010.1 <strong>Upgrade</strong> ChecklistThis behavior is now changed. The call will still fail if the key is not 1 (the first element position) and the element at theprevious position is not defined. Otherwise, the call will succeed and the behavior for calling SetAt(value,key) for a positionthat is undefined will be the same as Insert. That is, a new element at position “key” will be defined.5.2.5.11 Update ID Counter When IDENTITY Set Explicitly On Object InsertIf a value is provided for the IDENTITY property of a new object and the INSERT_IDENTITY option is set TRUE, thenthe ID of the new object is set to the value of the IDENTITY property.In previous versions, an error prevented subsequent inserts without the IDENTITY property from succeeding if the IDcounter value was the same as a previously inserted object. This has been corrected and an explicit set of an IDENTITYproperty will update the ID counter as long as the explicit value is greater than the current ID counter value. As part of thiscorrection, another error that prevented a check of the INSERT_IDENTITY option for batch inserts and direct saves hasbeen fixed.5.2.5.12 %OnDetermineClass Method Override Blocked%OnDetermineClass is a class method implemented for persistent, stream and serial objects. It has always been definedto be PRIVATE, but PRIVATE for class methods has never been enforced until this release. Any application class thatoverrides %OnDetermineClass will now have to update the method definition to remove the PRIVATE keyword.5.2.5.13 Indexes Permitted on %Stream.GlobalCharacterSearchableSeveral defects that caused corruption in an index based on a property whose type class is %Stream.GlobalCharacterSearchablehave been fixed in this version of <strong>Caché</strong>. These defects caused updates to the stream to be ignored and resulted inindex entries based on the old stream value. Also, deleting a container object did not fully remove the index entries fromthe stream in all cases.As part of the correction of these defects, indexing streams is only supported for instances of %Stream.GlobalCharacterSearchable.Instances of this class must be processed through the container. It is not legal to extract the stream OID fromthe container and process updates to the stream without saving the container.CAUTION:Existing applications should work well with this change as no change to the existing data structures wasmade. However, the old behavior almost certainly introduced corrupt index structures. Those indices shouldbe purged and rebuilt after installing this version.5.2.5.14 Namespace Prompt Property ChangedThe property, NamespacePrompt, in the Config.Miscellaneous class has been moved to the class, Config.Startup, and renamedto be TerminalPrompt.5.2.6 Class Compiler ChangesThis version of <strong>Caché</strong> continues the work begun in earlier releases of improving the class compiler. The changes that mayrequire changes to applications are detailed in this section.5.2.6.1 Class Inheritance Default Order ChangedIn version 2009.1, the Inheritance keyword was introduced to specify the order of inheritance from superclasses. In thatrelease, the default for classes that do not specify the order was “right”, as it had been before the keyword was introduced.In this version, the default inheritance order for classes that do not explicitly specify an order has been changed to “left”.120 <strong>Caché</strong> <strong>Upgrade</strong> <strong>Checklists</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!