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 » General IBM MQ Support » Getting 2195 + 2009 putting more than 97703 chars into queue

Post new topic  Reply to topic
 Getting 2195 + 2009 putting more than 97703 chars into queue « View previous topic :: View next topic » 
Author Message
smp
PostPosted: Thu Oct 15, 2009 6:10 am    Post subject: Getting 2195 + 2009 putting more than 97703 chars into queue Reply with quote

Newbie

Joined: 15 Oct 2009
Posts: 4

Hello everyone,

I am getting an 2195 + 2009 error, if I write more than 97703 chars into a queue.

Code:

MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2195
 MQJE007: E/A-Fehler beim Lesen von Nachrichtendaten
Error occured during API call - reason code0
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: Beendigungscode 2, Ursache 2009
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: Beendigungscode 2, Ursache 2009
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: Beendigungscode 2, Ursache 2009
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: Beendigungscode 2, Ursache 2009
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: MQException aufgetreten: Beendigungscode 2, Ursache 2009
 MQJE003: E/A-Fehler bei Å¡bertragung des Nachrichtenpuffers
MQJE001: Beendigungscode 2, Ursache 2009
com.ibm.mq.MQException: MQJE001: Beendigungscode 2, Ursache 2009
   at com.ibm.mq.MQManagedObject.close(MQManagedObject.java:400)
   at com.ibm.mq.MQQueue.close(MQQueue.java:1720)


@ MQQueue.put(MQMessage, MQPutMessageOptions)

I am just reading the String content from a file via FileReader/BufferedReader.

If there are only <= 97702 then it works fine and no exception will be thrown.

I run this directly from the Eclipse IDE (WinXP).
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Oct 15, 2009 6:43 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Open a PMR
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
smp
PostPosted: Fri Oct 16, 2009 12:43 am    Post subject: Reply with quote

Newbie

Joined: 15 Oct 2009
Posts: 4

Is there a possibility to get the sources from a certain mq-class (MQMessage)?

If I change MQMessage.writeString(String msg) with MQMessage.writeChar(String msg) it works.

I dont know what, but something is really strange.
In my opinion there are differences in the internal handling with the message. Maybe the use of an enclosed buffer.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Oct 16, 2009 4:43 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

smp wrote:
Is there a possibility to get the sources from a certain mq-class (MQMessage)?


no.
smp wrote:
If I change MQMessage.writeString(String msg) with MQMessage.writeChar(String msg) it works.

And, so now it works.


smp wrote:
I dont know what, but something is really strange.
In my opinion there are differences in the internal handling with the message. Maybe the use of an enclosed buffer.

Either this is documented or it isn't. Did you look?
What is the maxmsgln of the queue? Is it possilble that it's smaller than 195404 bytes? Is it possible that writeString performs character conversion and writeChar doesn't? That should be documented.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Fri Oct 16, 2009 5:28 am    Post subject: Reply with quote

Poobah

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

Quote:
What is the maxmsgln of the queue?

A message consists of your application data and the MQMD (and properties), so queue maxmsglength must be large enough to accommodate all of this.
_________________
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
smp
PostPosted: Tue Oct 20, 2009 12:25 am    Post subject: Reply with quote

Newbie

Joined: 15 Oct 2009
Posts: 4

I found out new experiences:

If I generate a String with a length of:

- 97702: no exception will be thrown
- 97703 - 97730: an excpetion will be thrown
- 97731: no exception will be thrown

and no characterSet will be set (= standard 819 is used) ->

Code:

MQQueue queue = QManagager.accessQueue(...)
MQMessage message = new MQMessage();

message.writeString(myGeneratedString);
queue.put(message, MQPutMessageOptions);


If I use writeChars instead of writeString it works in the 97703 - 97730 range too.
Back to top
View user's profile Send private message
smp
PostPosted: Tue Oct 20, 2009 12:52 am    Post subject: Reply with quote

Newbie

Joined: 15 Oct 2009
Posts: 4

Okay I think this bug has been removed before.
I changed my MQSeries libs and now it seems to work.

Where can I get the newest lib?-> com.ibm.mq-x.x.jar + connector.jar
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Tue Oct 20, 2009 3:57 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

Download the latest MQ Client Support Pack from IBM's website.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
gbaddeley
PostPosted: Tue Oct 20, 2009 2:25 pm    Post subject: Reply with quote

Jedi Knight

Joined: 25 Mar 2003
Posts: 2538
Location: Melbourne, Australia

bruce2359 wrote:
Quote:
What is the maxmsgln of the queue?

A message consists of your application data and the MQMD (and properties), so queue maxmsglength must be large enough to accommodate all of this.


maxmsgln includes the message data and properties, but NOT the message descriptor (MQMD) of the message.

Message data can include embedded standard MQ headers, like MQDLH and MQXQH. These can also include a copy of the MQMD from the original message.
_________________
Glenn
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 » General IBM MQ Support » Getting 2195 + 2009 putting more than 97703 chars into queue
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.