2033 Error Code Mq
Contents |
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this site About Us Learn more about Stack Overflow the company Business Learn more about hiring developers or posting
Mq Reason 2003
ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join mq 2051 the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a
Mqrc_backed_out
minute: Sign up How to avoid MQRC2033 NO_MSG_AVAILABLE up vote 4 down vote favorite 1 I have a simple program to process messages from a queue. My intention is to process all available messages in queue and still listen to queue https://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.tro.doc/q041040_.htm for incoming messages. I have written the processing part inside a infinite loop as i want it to listen to queue always and process messages. Once after processing all messages again it tries to get a message(as it is inside a infinite loop) from the queue and there is no messages it throws MQRC 2033 NO_MSG_AVAILABLE exception(infact it is correct) and my program exits. Can someone give an idea to continously listen to this queue and avoid this exception. websphere-mq share|improve this http://stackoverflow.com/questions/6479259/how-to-avoid-mqrc2033-no-msg-available question asked Jun 25 '11 at 17:06 Vignesh 3281431 add a comment| 1 Answer 1 active oldest votes up vote 2 down vote accepted When you execute the MQGET API call, there is an option to have the program wait for messages. You can specify a wait time (in milliseconds) or specify to wait forever. Just make sure that if you have the app wait for more than a few seconds, also specify 'Fail if Quiescing'. This allows the queue manager to be stopped cleanly. Without 'Fail if Quiescing' the administrator will need to issue a preemptive shutdown which can cause problems. There is a section specifically for this question in the Programmer's Guide in the Waiting for Messages chapter. Depending on the language you are writing in ,the actual value to specify is in the Programmer's Reference, the Using Java manual or the Using .Net manual. Each of these will be visible in the navigation panel when you click the link above. share|improve this answer answered Jun 26 '11 at 3:24 T.Rob 23.2k84379 Thanks Rob.. I specified MQWI_UNLIMITED in my get option.. It worked as expected.Thank you so much. –Vignesh Jun 26 '11 at 12:00 add a comment| Your Answer draft saved draft discarded Sign up or log in Sign up using Google Sign up using Facebook Sign up using Email and Password Post as a guest Name Email Post as a guest Name Email discard By posting your answer, yo
Java JSRs Mobile Certification Databases Caching Books Engineering Languages Frameworks Products This Site Careers Other all forums Forum: WebSphere Problem reading mesage from MQ - 2033 Yogesh Gandhi https://coderanch.com/t/583361/Websphere/reading-mesage-MQ Ranch Hand Posts: 226 posted 4 years ago I am facing a problem when reading from a MQ queue. I have written two functions: public String readRequestMQMessage(String xmlRequestID) //throws MQException, Exception { return readMQMessage(xmlRequestID, outputRequestQueueName); } public String readEnquiryMQMessage(String xmlRequestID) //throws MQException, Exception { return readMQMessage(xmlRequestID, outputEnquiryQueueName); } Only difference in the two functions is that queueName is being changed (which is mq error being passed as a parameter) . But I get a message 2033 when reading from Enquiry Queue, while the same code works perfectly fine in case of Request Queue. Can anyone give me a clue, what could be the possible reason for such a behavior. The function readMQMessage uses the following options: int intoptionForOutputQueue = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT; getMsgOptionsMq = new MQGetMessageOptions(); getMsgOptionsMq.options 2033 error code = MQC.MQGMO_SYNCPOINT; //8195; getMsgOptionsMq.matchOptions = MQC.MQMO_MATCH_CORREL_ID; MQEnvironment.hostname = MQHostname; MQEnvironment.channel = channelName; MQEnvironment.port = Integer.parseInt(MQPortname); MQEnvironment.properties.put("transport", "MQSeries Client"); outMQueue = qManager.accessQueue(outputQueueName, intoptionForOutputQueue, null, null, null); MQMessage retrievedMsg = new MQMessage(); retrievedMsg.correlationId = correlationByte; outMQueue.get(retrievedMsg, getMsgOptionsMq); Yogesh Gandhi Ranch Hand Posts: 226 posted 2 years ago At last I had to use browseEnquiryMessage method to read all the messages present in the queue. (That worked). This worked for me, I don't know the reason, but I was able to get rid of my problem. /* * This function iterates over all the present messages * in the Enquiry queue, creates an arrayList of all the messages * and returns the arrayList. * Also, this function will delete the message after * it reads the message from the queue. */ public ArrayList