Skip Menu |

This queue is for tickets about the MQSeries CPAN distribution.

Report information
The Basics
Id: 11752
Status: resolved
Worked: 10 min
Priority: 0/
Queue: MQSeries

People
Owner: Nobody in particular
Requestors: paul.meekin [...] citigroup.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.23
Fixed in: (no value)



Subject: MQSeries::Command fails for type MQSC
Hi Hildo, Hope it's all going well. We've found a bug in the MQSeries::Command code which means MQSC commands fail to parse the returned messages properly. The error message seen in Debug mode is this: [Fri Mar 4 14:03:43 2005] qStatus.pl: Unrecognized MQSC buffer: +MQDX QUEUE(TSTEUCLR.REMOTE ) TYPE(QREMOTE ) [Fri Mar 4 14:03:43 2005] qStatus.pl: at /var/mqm/home/perl/MQSeries/Queue.pm line 581 We have determined where the error is occurring. Line 825 of Base.pm looks like this: $buffer =~ s!^\*\S+\s+!!; We added a second line like this: $buffer =~ s!^\+\S+\s+!!; and this solved our problem. However, this works for us because we use the command prefix +qmgr, e.g. +MQD1. This value is user definable so I think it will require a bit of thought to make it more generic. Having said that, it may not be too long before we can dispense with MQSC on the mainframe entirely ;-) Cheers, Paul
This is an ongoing issue that'll be hard to resolve generically - parsing MQSC is just to darn unreliable. For what it's worth, I recommend a slightly different patch to the parser, having one regexp instead of two: old: $buffer =~ s!^\*\S+\s+!!; new: $buffer =~ s!^[\+\*]\S+\s+!!; I'll add this patch to release 1.24 of the MQSeries module, but please don't hold your breath for a release - I aim to add MQ V6 support to it, wait for MQ V6 to be GA, and then release it. And yes, I aim to support PCF for the mainframe, and then let MQSC support bitrot... Please let me know whether the sugegsted patch solves your issue and I'll close the ticket.
From: Paul Meekin
[HBIERSMA - Tue Mar 8 09:00:35 2005]: Show quoted text
> This is an ongoing issue that'll be hard to resolve generically - > parsing MQSC is just to darn unreliable. For what it's worth, I > recommend a slightly different patch to the parser, having one regexp > instead of two: > > old: $buffer =~ s!^\*\S+\s+!!; > new: $buffer =~ s!^[\+\*]\S+\s+!!; > > I'll add this patch to release 1.24 of the MQSeries module, but please > don't hold your breath for a release - I aim to add MQ V6 support to
it, Show quoted text
> wait for MQ V6 to be GA, and then release it. And yes, I aim to
support Show quoted text
> PCF for the mainframe, and then let MQSC support bitrot... > > Please let me know whether the sugegsted patch solves your issue and > I'll close the ticket.
Hi Hildo, Yes, that is a bit more elegant and it works for us. So this match will work for anyone who's using a Command Prefix starting with either a + or a *. I agree it's difficult to think of a good, generic solution but at least it's fairly easy to update this for anyone using other characters until we all roll out Version 6! Cheers, Paul