ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » Mainframe, CICS, TXSeries » Segment issue with IMS Bridge/OTMA?

Post new topic  Reply to topic
 Segment issue with IMS Bridge/OTMA? « View previous topic :: View next topic » 
Author Message
mswerve
PostPosted: Fri Feb 16, 2024 5:52 pm    Post subject: Segment issue with IMS Bridge/OTMA? Reply with quote

Newbie

Joined: 16 Feb 2024
Posts: 3

I'm having an issue with the mainframe at the organisation I work at and wondering if the experts here can make sense of what's going on. Admittedly I know very little about the mainframe as I am a Java developer but here's the background.

We have a Java application which is supposed to send an MQ message to the mainframe via the MQ-IMS bridge in order to execute a transaction via OTMA.

On the Java side, we construct a message (using Spring's JmsTemplate) and do the following:

    - Set the MQ headers (MQMD) to indicate the format is MQFMT_IMS and flag to the bridge that we have an MQIIH struct in the MQ message
    - Set the character set in the MQ headers (MQMD) to indicate we are using code page 1208 (UTF8 encoding)
    - Set the Reply to Q (MQMD) to our desired queue destination to receive the response from mainframe
    - Ensure that we specify the target client is non-JMS
    - We then construct the actual MQIIH using defaults and set the following fields:
    Code:
    Format = MQFMT_IMS_VAR_STRING
    ReplyToFormat = MQFMT_IMS_VAR_STRING
    Encoding = 0x311
    CodedCharSetId = 1208
    CommitMode = MQICM_SEND_THEN_COMMIT
    LTermOverride = <constant>



Now this is where things get weird. For many other uses in our organisation (which are working and live in production), we always follow the MQIIH with LLZZ where LL (as a 2-byte short) is:
Code:
= the length of the application data (encoded in UTF8) plus 4 (LLZZ?) + 8 (for the transaction name)

ZZ is just filled with 00 00 (reserved). And after this we specify the transaction name (8-bytes) and all the remaining application data and this works perfectly fine.

But for one particular transaction name (ie. "AB123 ", it doesn't work unless we explicitly do not include an LLZZ at all! That is, we are writing the MQIIH and directly following by transaction name and remaining application data. This seems to contradict all the things I've read online and seen work previously before. When we include LLZZ, we are getting this error from OTMA:
Code:
APPLICATION ERROR - SENSE CODE=001A001E

The above appears to be some security violation.

Another quirk we have discovered is that if you omit LLZZ and provide around ~7kb of application data, it's all working fine, but when we try the same with ~9kb of string data, we are getting this error from OTMA:
Code:
APPLICATION ERROR - SENSE CODE=001A0022


Which points us to DFS1290E stating that the destination only accepts single segment messages.

I'll also add that, although we encode using UTF-8 on the Java side, none of the data falls outside the standard ASCII character range (ie. there are no multi-byte characters in the data).

Can anyone make sense of this? This issue has been going on for weeks and nobody knows what's going on.
Back to top
View user's profile Send private message
hughson
PostPosted: Sat Feb 17, 2024 2:27 am    Post subject: Re: Segment issue with IMS Bridge/OTMA? Reply with quote

Padawan

Joined: 09 May 2013
Posts: 1916
Location: Bay of Plenty, New Zealand

mswerve wrote:
This issue has been going on for weeks and nobody knows what's going on.

Did it used to behave differently and some number of weeks ago "something" changed and it now behaves as you describe? Or is this a new application that has always behaved this way? Or is it just that some weeks ago someone noticed the difference in this application and started to pull on that loose thread!

Cheers,
Morag
_________________
Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software
Back to top
View user's profile Send private message Visit poster's website
mswerve
PostPosted: Sat Feb 17, 2024 5:54 am    Post subject: Re: Segment issue with IMS Bridge/OTMA? Reply with quote

Newbie

Joined: 16 Feb 2024
Posts: 3

hughson wrote:
mswerve wrote:
This issue has been going on for weeks and nobody knows what's going on.

Did it used to behave differently and some number of weeks ago "something" changed and it now behaves as you describe? Or is this a new application that has always behaved this way? Or is it just that some weeks ago someone noticed the difference in this application and started to pull on that loose thread!

Cheers,
Morag


It's a new application that has always behaved this way to my knowledge. And yes, I noticed that we are not providing LLZZ and started questioning it.... but I'm not as concerned regarding ommission LLZZ, but more so about this segment error (unless its somehow related).
Back to top
View user's profile Send private message
mswerve
PostPosted: Sat Feb 17, 2024 4:04 pm    Post subject: Reply with quote

Newbie

Joined: 16 Feb 2024
Posts: 3

Anyway it looks like it's been put into the "too hard" basket and we've decided to restructure the application data in a way where it will never reach 9kb to avoid this issue altogether.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Sun Feb 18, 2024 8:07 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9399
Location: US: west coast, almost. Otherwise, enroute.

No argument from me on this: the mainframe is complicated. IMS, CICS, COBOL may be old, but are alive and well, and continue to be productive and cost-effective.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » Mainframe, CICS, TXSeries » Segment issue with IMS Bridge/OTMA?
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.