|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Q recovery |
« View previous topic :: View next topic » |
Author |
Message
|
MCardinal |
Posted: Wed Mar 30, 2011 5:57 am Post subject: Q recovery |
|
|
Novice
Joined: 06 Oct 2010 Posts: 18 Location: Ottawa, Canada
|
Hi,
I'm looking for more information about the recovery of some object in Websphere MQ.
The setup is Websphere MQ Server 7.0.1.3 on Windows Server. The server use circular looging.
You have a simple Queue Manager called QM using default path for the example.
On QM you make a local queue called test, with default attributes, except that you make this queue Persistent.
Now you put some messages in that queue, and unfortunatly something happend to the disk or file, for any reason, and the file Q stored in C:\Program Files\IBM\Websphere MQ/Qmgrs\QM\queues\test\
is damage or deleted ...
Next time you try to put a message in that queue you get the error AMQ 4038.
-- This is where I have issue and I'm looking for more simple procedure--
I can stop my Queue Manager and restore the Q file form my back into the original folder. When I start my Queue Manager the Queue is back iun business but I have lost all the messages I have put in the Queue. I can see that my Q file is a few Mb, but if one message get written again in the queue this File gets bakc ti a few Kb, depending on the size of the messages put in.
How can I recover the messages on that Q that were stored on that file? And is it possible to do this without reloading the whole Queue Manager?
I can backup the log file using dmpmqlog , I see that my messages are stores in that file. Is it possible to restore only that queue from this log file? |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Mar 30, 2011 6:26 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
First, queues are neither persistent nor non-persistent. Messages can be persistent or non-persistent.
With linear logs, you can record an object image using rcdmqimg control command, and later recover it using rcrmqobj control command.
WMQ uses its logs in order to re-start, and recover from units of work that may have been in-flight at shutdown. Use of wmq's logs for other purposes is not supported by IBM.
The use of logs is well-documented in the WMQ System Admin manual, and in the InfoCenter. _________________ 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 |
|
 |
MCardinal |
Posted: Wed Mar 30, 2011 6:35 am Post subject: |
|
|
Novice
Joined: 06 Oct 2010 Posts: 18 Location: Ottawa, Canada
|
By Queue being persistant I meant that the property on the Queue when you right click in MQ Explorer, you have the place Default persistance and you can setup how you want your message to be handle that way. So yes message are persistant but not the queue. This is not the point of my post neither than I can re-arange the setup I'm currently in. So for that same reason I'm stuck with circular logging. I made a simple example of my setup for anyone who may want to try it.
The Queue Manager log are not Synchonized or I do not really know how to make them.
This makes it that only the Q file is the most accurate information about the Queue content at the point of failure.
QM Log file at X time, put messages in queue, QM log file still at X time, but Q file is now at Y time. It crash, you recover QM but it's only accurate as X time, not Y time, how to I get the messages store in the Q file from X time to Y time?
I'm trying to recover these messages, that could be from a backup (incremental as an example).
Is that possible? I'm not sure how to explain it further, but I invite anyone to give it a try. MQ server ans MQ explorere is all you need, as long as you have access to the data location. |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Mar 30, 2011 7:52 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
The Queue Manager log are not Synchonized or I do not really know how to make them. |
Not sure what this means.
Quote: |
I'm trying to recover these messages, that could be from a backup (incremental as an example). |
How to backup a qmgr filesystem has been discussed here many, many times.
Again, the WMQ System Admin manual describes what logs are for, and how WMQ uses them. This subject has also been discussed here many times.
Please search here, or using google. _________________ 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 |
|
 |
MCardinal |
Posted: Wed Mar 30, 2011 7:57 am Post subject: |
|
|
Novice
Joined: 06 Oct 2010 Posts: 18 Location: Ottawa, Canada
|
I know unfortunatly, I think I'm looking for an answer that is not available.
I have made many scenario and options of recovery to try to acheive no data lost / or down time, with the configuration that was given to me.
Thanks for replying. |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Mar 30, 2011 8:10 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
WMQ offers the ability to recover damaged objects; but linear logs are a prerequisite. If you can't use linear logs, then you might be able to use filesystem backups to recover.
Inevitably, it is the source of the data that was used to create the messages in the first place is what you are looking for.
IMHO, if messages are going to sit in queues for an extended period of time, AND the messages are critical, then application developers need to write an application that backs up the messages to tape/disk. _________________ 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 |
|
 |
gbaddeley |
Posted: Thu Mar 31, 2011 2:14 pm Post subject: |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
Quote: |
By Queue being persistant I meant that the property on the Queue when you right click in MQ Explorer, you have the place Default persistance and you can setup how you want your message to be handle that way. |
Not strictly true. Messages will only take on the queue's default perisitence if the app is written to put using "persistence as per queue definition". The app can easily override this, and specify persistent or non-persistent. The only sure way to tell what is being used is to inspect every message on the queue. _________________ Glenn |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|