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 » Dynamic Queues created by saveqmgr?

Post new topic  Reply to topic Goto page 1, 2  Next
 Dynamic Queues created by saveqmgr? « View previous topic :: View next topic » 
Author Message
Rene
PostPosted: Mon Jul 09, 2012 3:00 am    Post subject: Dynamic Queues created by saveqmgr? Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

Hello,

i wrote a little script to backup all queuemanager which are running on a server using the program saveqmgr.linux. i made a cronjob runnig the script every day at the same time.
til here everthing is nice, the script is working and doing its job.

The problem i have now is, that there are lot of local queues with DEFTYPE(PERMDYN) and a name like SAVEQMGR.4F...... created everyday at the same time my script is running. Why aren't they cleaned up? On some other machines where i deployed my script, these queues do not exist...

Anybody got idea?

Thanks.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Mon Jul 09, 2012 3:51 am    Post subject: Re: Dynamic Queues created by saveqmgr? Reply with quote

Poobah

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

Rene wrote:

The problem i have now is, that there are lot of local queues with DEFTYPE(PERMDYN) and a name like SAVEQMGR.4F...... created everyday at the same time my script is running. Why aren't they cleaned up?

Cleaned up is not WebSphere MQ terminology. What do you mean?
_________________
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
Rene
PostPosted: Mon Jul 09, 2012 3:59 am    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

I quess the queues are created while saveqmgr is working. And in my opinion the dynamic queues have to be deleted when saveqmgr finished... because they are dynamic queues, and per definition "They are deleted when an application (not necessarily the one that issued the MQOPEN call that created the queue) successfully closes the queue ..." (source: http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=%2Fcom.ibm.mq.csqzal.doc%2Ffg11010_.htm)
Back to top
View user's profile Send private message
bruce2359
PostPosted: Mon Jul 09, 2012 4:09 am    Post subject: Reply with quote

Poobah

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

http://www-01.ibm.com/support/docview.wss?uid=swg24000673 describes the purpose and function of supportpac ms03 (saveqmgr).
_________________
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
bruce2359
PostPosted: Mon Jul 09, 2012 4:31 am    Post subject: Reply with quote

Poobah

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

Rene wrote:
...And in my opinion the dynamic queues have to be deleted when saveqmgr finished... and per definition "They are deleted when an application (not necessarily the one that issued the MQOPEN call that created the queue) successfully closes the queue ..." (source: http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=%2Fcom.ibm.mq.csqzal.doc%2Ffg11010_.htm)

Yes. And, it seems, that saveqmgr is not finished with its dynamic queue at the precise instance that it creates the file object definition SAVEQMGR... .

Did you look for the SAVEQMGR... dynamic queue local object AFTER saveqmgr ended? What did you discover?
_________________
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
Rene
PostPosted: Mon Jul 09, 2012 4:43 am    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

yes, of course i looked after it finished. my script calls saveqmgr every day at 6 in the morning

Code:

Compiled for Websphere MQ V7.0.1.0 on Jan 22 2010
SAVEQMGR V6.1.3
Requesting attributes of the queue manager...
Writing Queue Manager definition to SAVEQMGR.MQSC.
Generating attributes for Websphere MQ Release 6.0.0
Generating code for platform UNIX
Requesting attributes of all authinfo objects...
Requesting attributes of all queues...
Requesting attributes of all channels...
Requesting attributes of all processes...
Requesting attributes of all namelists...
Requesting attributes of all listeners...
Requesting attributes of all services...
Writing AuthInfo definitions to SAVEQMGR.MQSC.
Writing Queue definitions to SAVEQMGR.MQSC.
Skipping dynamic queue AMQ.4F957F99297DCE02
.
.
.

Skipping dynamic queue SAVEQMGR.4F957F992EB14602
Skipping dynamic queue SAVEQMGR.4F957F992EEB6B02
Skipping dynamic queue SAVEQMGR.4F957F992F298602
Skipping dynamic queue SAVEQMGR.4F957F992F683D02
Skipping dynamic queue SAVEQMGR.4F957F992F732930
Skipping dynamic queue SAVEQMGR.4F957F992F80387E
Writing Channel definitions to SAVEQMGR.MQSC.
Writing Process definitions to SAVEQMGR.MQSC.
Writing Namelist definitions to SAVEQMGR.MQSC.
Writing Listener definitions to SAVEQMGR.MQSC.
Writing Service definitions to SAVEQMGR.MQSC.


That's the output saveqmgr made right now... (Time 14:35)
And her is what runmqsc gives me...

Code:


AMQ8409: Display Queue details.
   QUEUE(SAVEQMGR.4F957F992F80387E)        TYPE(QLOCAL)
   ACCTQ(QMGR)                             ALTDATE(2012-07-09)
   ALTTIME(14.35.41)                       BOQNAME( )
   BOTHRESH(0)                             CLUSNL( )
   CLUSTER( )                              CLWLPRTY(0)
   CLWLRANK(0)                             CLWLUSEQ(LOCAL)
   CRDATE(2012-07-09)                      CRTIME(14.35.41)
   CURDEPTH(0)                             DEFBIND(OPEN)
   DEFPRTY(0)                              DEFPSIST(NO)
   DEFSOPT(EXCL)                           DEFTYPE(PERMDYN)
   DESCR( )                                DISTL(NO)
   GET(ENABLED)                            HARDENBO
   INITQ( )                                IPPROCS(0)
   MAXDEPTH(5000)                          MAXMSGL(4194304)
   MONQ(QMGR)                              MSGDLVSQ(PRIORITY)
   NOTRIGGER                               NPMCLASS(NORMAL)
   OPPROCS(0)                              PROCESS( )
   PUT(ENABLED)                            QDEPTHHI(80)
   QDEPTHLO(20)                            QDPHIEV(DISABLED)
   QDPLOEV(DISABLED)                       QDPMAXEV(ENABLED)
   QSVCIEV(NONE)                           QSVCINT(999999999)
   RETINTVL(999999999)                     SCOPE(QMGR)
   NOSHARE                                 STATQ(QMGR)
   TRIGDATA( )                             TRIGDPTH(1)
   TRIGMPRI(0)                             TRIGTYPE(FIRST)
   USAGE(NORMAL)
Back to top
View user's profile Send private message
bruce2359
PostPosted: Mon Jul 09, 2012 5:19 am    Post subject: Reply with quote

Poobah

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

... at 14:35, you display the attributes of a local queue created at 14.35.41)
Rene wrote:
...
(Time 14:35) And her is what runmqsc gives me...

AMQ8409: Display Queue details.
QUEUE(SAVEQMGR.4F957F992F80387E) TYPE(QLOCAL)
ACCTQ(QMGR) ALTDATE(2012-07-09)
ALTTIME(14.35.41) BOQNAME( )
BOTHRESH(0) CLUSNL( )
CLUSTER( ) CLWLPRTY(0)
CLWLRANK(0) CLWLUSEQ(LOCAL)
CRDATE(2012-07-09) CRTIME(14.35.41)
CURDEPTH(0) DEFBIND(OPEN)
DEFPRTY(0) DEFPSIST(NO)
DEFSOPT(EXCL) DEFTYPE(PERMDYN)
DESCR( ) DISTL(NO)
GET(ENABLED) HARDENBO
INITQ( ) IPPROCS(0)
MAXDEPTH(5000) MAXMSGL(4194304)
MONQ(QMGR) MSGDLVSQ(PRIORITY)
NOTRIGGER NPMCLASS(NORMAL)
OPPROCS(0) PROCESS( )
PUT(ENABLED) QDEPTHHI(80)
QDEPTHLO(20) QDPHIEV(DISABLED)
QDPLOEV(DISABLED) QDPMAXEV(ENABLED)
QSVCIEV(NONE) QSVCINT(999999999)
RETINTVL(999999999) SCOPE(QMGR)
NOSHARE STATQ(QMGR)
TRIGDATA( ) TRIGDPTH(1)
TRIGMPRI(0) TRIGTYPE(FIRST)
USAGE(NORMAL)

_________________
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
Rene
PostPosted: Mon Jul 09, 2012 5:25 am    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

yes, that's right. That is the queue which is created after running saveqmgr. on the server are about 60 of them, all created just the second my script is called. Means: script in crontab 6 o'clock... SAVEQMGR.... queue created 6:00:01...
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Jul 09, 2012 6:36 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

I understand the maintainer of saveqmgr is responsive to questions presented via the documented methods of contacting him.

Saveqmgr uses a dynamic reply queue.

If you are seeing that this queue remains in existence after you have closed saveqmgr, then something very odd is going on - perhaps your script is forcibly quitting saveqmgr when it shouldn't be.

You can not run saveqmgr without having it create this queue - unless you take your own time and effort to alter the code and recompile it to use a different queue.
Back to top
View user's profile Send private message
Rene
PostPosted: Mon Jul 09, 2012 11:13 am    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

Ok, i can follow you. but the oddest thing, the example output was done without my script. this was just executed in the command-line... is it possible to get the exit code of saveqmgr? perhaps this gives a clue...
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Jul 09, 2012 11:34 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The source code for saveqmgr comes with it.

It acts like a standard C program that writes to stdin and stderr, and returns an integer to the shell.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Jul 09, 2012 11:35 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

There are also options in MQ and in saveqmgr that control whether temporary or permanent dynamic queues are used/created.
Back to top
View user's profile Send private message
Rene
PostPosted: Mon Jul 09, 2012 10:11 pm    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

when i type "saveqmgr -?" i don't find any option to prevent creating permdyn queues. only the option to handles already existing perndyn queues as local queues.

and in mq i can't change the option, because dynamic queues are still used from other applications than saveqmgr...

I just tried to use the -version flag because the used mq is 6.0.2... but still doesnt work the way i want. We also use mq 7 already... and on these machines there are no permdyn queues named "SAVEQMGR..."
Back to top
View user's profile Send private message
exerk
PostPosted: Tue Jul 10, 2012 12:11 am    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

Rene wrote:
I just tried to use the -version flag because the used mq is 6.0.2...

Please be aware (if you are not already) that flag is for saving up-level queue manager objects for down-level queue managers, e.g. a V7.0 dump to populate a V6.0 queue manager.
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
Rene
PostPosted: Tue Jul 10, 2012 12:56 am    Post subject: Reply with quote

Novice

Joined: 09 Jul 2012
Posts: 10

Ok, thats not that what i want I just wonder how i can solve this problem with these dynamic queues. I tried this at two Version of MQ. Version 6.0.2: here i have the problem with saveqmgr. Version 7.0.1.4(and up): Here i have no problems with saveqmgr....
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » General IBM MQ Support » Dynamic Queues created by saveqmgr?
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.