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.