Does ES_IMS_CANCEL_MODE=D work?

I'm evaluating Micro Focus Enterprise Developer to determine if it can be used for developing our IMS application.

Over the years, we've spent vast amounts of effort on performance improvement. A key component is caching: we run as a Reusable Runtime Environment, so once a program is loaded, it stays loaded along with all of its memory. This enables us to trade higher one-time processing for much lower processing on subsequent transactions.

From what I can see, the closest MFED ES can come to this is ES_IMS_CANCEL_MODE=D (or L, if we remove all of our DLITCBL entry points).

But when I try ES_IMS_CANCEL_MODE=D, it doesn't work. I executed the same transaction twice in a row in the same message region, and on the second time all of the program's working storage was reset back to the initial state.

Is there a trick to getting ES_IMS_CANCEL_MODE=D to work?

I'm wondering if it is just keeping the program DLLs loaded but still freeing all of the working storage.

Parents
  • Suggested Answer

    Hi Michael,

    Do you want to use a logical or physical cancel? From your description I believe logical cancel to reuse/cache modules and aid performance.

    See documentation page:
    www.microfocus.com/.../GUID-5702644E-2B55-4DB6-87A9-52077F96EFB5.html

    Explains:
    ES_IMS_CANCEL_MODE=D - Performs a deferred cancel, which will yield the same behavior as a logical cancel when the MPR services the same MPP back-to-back. It will behave as P (physical cancel) when the transaction changes.

    As I believe you are looking for a logical cancel would using ES_IMS_CANCEL_MODE=L  be appropriate, the above documentation page explains: Performs a logical cancel. This gives the best performance of the options, but can only be used it there is only one DLITCBL entry point in an MPR.

Reply
  • Suggested Answer

    Hi Michael,

    Do you want to use a logical or physical cancel? From your description I believe logical cancel to reuse/cache modules and aid performance.

    See documentation page:
    www.microfocus.com/.../GUID-5702644E-2B55-4DB6-87A9-52077F96EFB5.html

    Explains:
    ES_IMS_CANCEL_MODE=D - Performs a deferred cancel, which will yield the same behavior as a logical cancel when the MPR services the same MPP back-to-back. It will behave as P (physical cancel) when the transaction changes.

    As I believe you are looking for a logical cancel would using ES_IMS_CANCEL_MODE=L  be appropriate, the above documentation page explains: Performs a logical cancel. This gives the best performance of the options, but can only be used it there is only one DLITCBL entry point in an MPR.

Children