IDMS

 View Only
  • 1.  IDMS V19 - MQ interface : what is Func=IMQCMIT

    Posted Apr 22, 2020 07:19 AM
    We do a rollback task in our ADS dialog doing MQ calls using new V19 interface, but our MQ changes are not rolled back.I see in the MQ trace a line  : IDMS DC131999 V1 T8684 MQ Trace:  LTE=LT001,ST=3,Func=IMQCMIT,CMP=0,RSN=0,Time=0.000009 .
    Does anyone know what it means ? I think the application simply does a ROLLBACK TASK to undo it's changes.  thanks for the advice


  • 2.  RE: IDMS V19 - MQ interface : what is Func=IMQCMIT

    Posted Apr 23, 2020 02:46 AM
    Hello Dirk, I'm sure you checked this but did you put your messages with MQPMO_SYNCPOINT (or get them with MQGMO_SYNCPOINT) ?  If not, that could be an explanation.  Nevertheless, I'm curious about the behaviour of the new MQ interface when programmatically initiating a rollback.  Interesting problem !


  • 3.  RE: IDMS V19 - MQ interface : what is Func=IMQCMIT

    Broadcom Employee
    Posted Apr 23, 2020 08:13 AM
    Hi Dirk,

    IDMS database recovery and MQ recovery are independent of each other.    Rollback Continue will only roll out database related changes.   Your application will need to issue an explicit MQBACK to also back out MQ changes.

    IMQCMIT is an MQCMIT call issued internally by IDMS.  By default when a task ends normally with an open MQ session IDMS will issue MQCMIT.  If the task were abending it would issue an MQBACK which should show up as IMQBACK in the trace.

    Regards
    Lynn DeLong



  • 4.  RE: IDMS V19 - MQ interface : what is Func=IMQCMIT

    Posted Apr 23, 2020 08:25 AM
    Lynn, thanks for reply.

    Do you know this from experience?  or is it somewhere documented in Broadcom documentation ? I looked for it, but found no clear statement regarding this.  So are you suggesting that if the ADS application would have abended, all MQ activity would have been undone ? And if you do not want your application to end, you need to code MQBACK explicitely ....

    Kind regards........Dirk
     



  • 5.  RE: IDMS V19 - MQ interface : what is Func=IMQCMIT

    Broadcom Employee
    Posted Apr 23, 2020 09:06 AM
    Hi Dirk,

    I know this from experience.   I was one of the developers which added MQ support.   

    It looks like this is documented as usage notes for MQCMIT and MQBACK.

    https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-mainframe-software/database-management/ca-idms/19-0/using/using-ca-idms-mq-adapter/develop-programs-for-mq-access/mqi-function-descriptions.html

    The behavior and documentation location was based on how IBM documented this behavior for batch MQ jobs under usage notes.  Even though CV tasks share the same "CV job" we tried to make a CV task behave the same as a batch MQ job would behave if the batch job abended or ended normally with uncommitted changes.

    I hope this helps
    Lynn


  • 6.  RE: IDMS V19 - MQ interface : what is Func=IMQCMIT

    Posted Apr 23, 2020 09:19 AM
    Lynn,

    Oh, perfect  answer, thank you so much. When reading the documentation you refer to -- which I already read before --, I do agree with your clarification. The point is: we currently use an external software for the IDMS-MQ interface, and that software acts differently . And this implies that we will have to modify all of online ADS dialogs & programs in this situation  to either include MQBACK or abend the application -- the latter is quite unlikely. But once again, thanks a lot.
    Kind regards.......Dirk