MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Recovery of TSQs created in Main memory when a tran abends

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> CICS and Middleware
View previous topic :: View next topic  
Author Message
S.MADHUMATHI
Beginner


Joined: 25 Jun 2004
Posts: 13
Topics: 5

PostPosted: Fri Sep 17, 2004 5:05 am    Post subject: Recovery of TSQs created in Main memory when a tran abends Reply with quote

I read that it is possible to recover TSQ resource used by the transaction until the time of the transaction failure (abend) but TSQ defined only in auxiliary storage is "recoverable", whereas TSQ in "main" storage is not recoverable.

What concerns me is I wrote a transaction which writes into a TSQ created using "Main" and forcefully caused an "abend" to occur mid-way. The transaction abended as expected. But when I looked into the TSQ using CEBR, I could still find the queue with data intact which contradicts the above theory.

Can any one shed some light on this?
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12380
Topics: 75
Location: San Jose

PostPosted: Fri Sep 17, 2004 5:41 am    Post subject: Reply with quote

Madhumati,

May be the TSQ is defined in the temporary storage table(TST) as recoverable. You can define using the DFHTST TYPE=RECOVERY macro. When you define your temporary storage queues in a TST, note that the TSAGE parameter influences the recovery characteristics of that temporary storage.

Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
S.MADHUMATHI
Beginner


Joined: 25 Jun 2004
Posts: 13
Topics: 5

PostPosted: Fri Sep 17, 2004 5:49 am    Post subject: Reply with quote

I checked for the TSQ properties using "cemt" which said the following..it says the queue is non-recoverable
Tsqueue(RTMIK13Q)
Numitems(00003)
Length(0000015552)
Location(Main)
Action( )
Transid(MV65)
Recovstatus(Notrecovable)
Maxitemlen(05184)
Minitemlen(05184)
Lastusedint( 00004215 )
Back to top
View user's profile Send private message
Mike Chantrey
Intermediate


Joined: 10 Sep 2003
Posts: 234
Topics: 1
Location: Wansford

PostPosted: Fri Sep 17, 2004 8:59 am    Post subject: Reply with quote

A transaction abend will not delete your TSQ regardless of how it is defined. Recoverability relates to backing out changes to the TSQ made in the current unit of work. So a non-recoverable TSQ (i.e. any MAIN TSQ) will contain exactly what you have written to it up to the point of the abend; a recoverable one will have any changes made in the current UOW (typically in the current transaction) backed out.
It therefore sounds like you are getting exactly the behaviour you should do.

Kolusu: Just to note that in all currently supported CICS versions you should be using the RDO TSMODEL definitions, not DFHTST macros, to define TSQ characteristics, altough DFHTST still works at present.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12380
Topics: 75
Location: San Jose

PostPosted: Fri Sep 17, 2004 9:09 am    Post subject: Reply with quote

Quote:

Kolusu: Just to note that in all currently supported CICS versions you should be using the RDO TSMODEL definitions, not DFHTST macros, to define TSQ characteristics, altough DFHTST still works at present.


Mike,

Thanks for the tip. My CICS knowledge is lil rusty. The last time I worked on a CICS program was way back in 1999. our shop opted for IMS DC screens over CICS screens.

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
S.MADHUMATHI
Beginner


Joined: 25 Jun 2004
Posts: 13
Topics: 5

PostPosted: Mon Sep 20, 2004 12:50 am    Post subject: Reply with quote

Thanks....

But when I created the TSQ in AUX, even then, the RECOVSTATUS is
NOT-RECOVERABLE (RECOVSTATUS=30). How I will make it as "RECOVERABLE"?
Back to top
View user's profile Send private message
S.MADHUMATHI
Beginner


Joined: 25 Jun 2004
Posts: 13
Topics: 5

PostPosted: Thu Sep 30, 2004 5:17 am    Post subject: Reply with quote

It has been defined in cics table that TSqueues with prefix 'ABC' as recoverable. But in my program I created a TSQ starting with "RTM" in "MAIN", When I look for the same TSQ using "cemt", it says it is recoverable and also it is created in "Auxiliary" but not in "MAIN". Is there a reason for it?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> CICS and Middleware All times are GMT - 5 Hours
Page 1 of 1

 
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


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group