Ensemble Release Notes Archive
Ensemble 2010.2
[Home] [Back] [Next]
InterSystems: The power behind what matters   
Class Reference   

New Features in Ensemble 2010.2
Ensemble 2010.2 introduced the following new features:
Ensemble 2010.2 provided enhancements to the following features:
Compatibility Issues for Upgrades to Ensemble 2010.2
The following changes in the 2010.2 release may affect the operation of your existing system. Review the following issues before upgrading a previous instance of Ensemble:
Also review the Caché Release Note and Upgrade Checklist Archive.
Remove Support for HL7v2 Framing with XML Text
This release of Ensemble removes support for all HL7 framing options that involve XML text being detected or generated in between successive HL7 message bodies in an HL7 data stream. This is an undocumented feature InterSystems believes no one is using. If you are using any of these options, contact the InterSystems WRC.
Update Error Handling on HTTP Outbound Adapter
This release of Ensemble updates HTTP outbound adapter processing to return an error status code (<Ens>ErrHTTPStatus) if the HTTP status it receives is something other than 200 (OK). Also, the adapter now sets the retry flag if it receives a status of 503 (Service unavailable due to a temporary overloading or maintenance of the server). The introduction of the new status code makes error handling more accessible to the Reply Code Actions setting feature. See Reply Code Actions in the reference section of Configuring Ensemble Productions.
This change also updates the HL7 HTTP outbound adapter to return the indicated ACK commit code according to the HTTP status conditions shown in the following table.
ACK commit code HTTP status condition
AA 200 — OK code
AR 503 — Service Unavailable due to a temporary overloading or maintenance of the server
AE All other non-OK codes
See HL7 Acknowledgement (ACK) Mode in the Ensemble HL7 Version 2 Development Guide for more information.
If you have code that expects a $$$OK status returned from methods of the HTTP outbound adapter even when the remote HTTP server returns a non-OK status, you may need to update the code to either change the error handling or configure the Reply Code Actions setting to recognize the new error code.
Update Error Processing in File Outbound Adapter
This release of Ensemble improves the error status checking and error trapping in the PutStream() method of the EnsLib.File.OutboundAdapter.
Change Return Status on HTTP Inbound Adapter
This release of Ensemble changes the HTTP inbound adapter return status to a server error instead of OK if the ProcessInput() method returns an error status.
If you have clients invoking an Ensemble service that uses the HTTP inbound adapter you may now see an HTTP error status code (500) when an error occurs in the Ensemble service, when formerly you saw an HTTP OK (200) status. This does not disrupt normal operation because it only affects behavior when the HTTP service fails. Additionally, Ensemble still returns its non-standard <error> block body. It is unlikely that your service has customized behavior based on this returned status; however, this change may trigger a different code path in your error handler and therefore you should review this code.
Add Requirement to Subclass Message Bank Production
This release of Ensemble changes the Ens.Enterprise.MsgBank.Production class to be an abstract class and adds a requirement that you must subclass it and copy the ProductionDefinition XData block, to run a Message Bank instance. This allows you to run multiple message banks in separate namespaces on the same instance, and it prevents future upgrades from deleting your configuration setting changes. It also removes an obstacle to allowing you to mark your ENSLIB database as read-only.
If you are an early adopter of the Message Bank from a previous release, you must copy your Message Bank production class (Ens.Enterprise.MsgBank.Production) to a subclass before upgrading. If you do not, the upgrade will overlay your configuration changes, and will not allow you to restart the common Message Bank production or reapply your configuration settings.
Update Disable Behavior of Business Processes
This release of Ensemble refines the behavior of disabling a business process. The behavior depends on the private Pool Size configuration setting of the business process:
If you upgrade to this release and your production contains a business process with Pool Size = 0, disabling the process now has different behavior.
For a detailed discussion of pool sizes, see Pool Size in Configuring Ensemble.