IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Diif between CBLTDLI vs CBLTDLX


IBM Mainframe Forums -> IMS DB/DC
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Banuchandar

New User


Joined: 02 Jun 2010
Posts: 4
Location: Chennai

PostPosted: Thu Feb 17, 2011 2:46 pm
Reply with quote

Hi All,

What is the difference between CBLTDLX and CBLTDLI IMS calls. Planning to upgrade the CBLTDLX calls, Would it reduce the CPU time of which a CBLTDLX call consumes.

Regards,
B_G
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Thu Feb 17, 2011 3:36 pm
Reply with quote

why not look at the manuals Yourself ???

here is a link to a list of bookshelves where You can find the manuals for Your level of IMS
www-03.ibm.com/systems/z/os/zos/bkserv/zappls2.html

if You find any issues reading the manual explanations somebody will be glad to help!
Back to top
View user's profile Send private message
Kjeld

Active User


Joined: 15 Dec 2009
Posts: 365
Location: Denmark

PostPosted: Thu Feb 17, 2011 3:55 pm
Reply with quote

You should not upgrade your CBLTDLX calls to CBLTDLI to expect significantly faster or cheaper processing. I would expect current version IMS modules to have performance characteristics tuned over the years, but as functionality increases, so do overhead.

The primary reason for converting should be that CBLTDLX has been obsolete for over 10-15 years, and no documentation or support for it exists any more.

CBLTDLX was a pre-IMS BMP checkpoint/restart interface using DL/1 data bases for storing checkpoints.
Back to top
View user's profile Send private message
Banuchandar

New User


Joined: 02 Jun 2010
Posts: 4
Location: Chennai

PostPosted: Mon Feb 21, 2011 9:55 pm
Reply with quote

Hi Kjeld,

Many thanks for you views and suggestions.

All,

Adding some information about the CBLTDLX call. PFB.

CBLTDLX
When we began writing IMS update programs (in the early 1980s), we needed a mechanism to ensure integrity. At that point, GSAM was not available (or did not have sufficient functionality) and BMC/ARC was not available. So our systems programmers worked with IBM to provide a stopgap mechanism.

The solution was CBLTDLX. This had two components :-

A Checkpoint database. This was a conventional IMS database keyed by Job/Step/ProcStep that could be used to store checkpoint areas.

An application can take a checkpoint (CHKP) using CBLTDLX (passing the checkpoint area). CBLTDLX inserts the data onto the Checkpoint database, issues a basic IMS checkpoint and then deletes the checkpoint data.

So if there is an abend, the updates to all databases (includinging the Checkpoint database) are backed out to the last successful checkpoint and the checkpoint area is magically restored and can be used for a restart (XRST) call.

Checkpoint pacing criteria are also stored on the Checkpoint Database. Eg you can specify to skip checkpoints if there have been less than 'x' reads or 'wy' updates since the last successful checkpoint.

XSAM functionality. This was an attempt to second-guess what GSAM should do (when IBM made it available). The XSAM module keeps track of the position of each XSAM file. An XSAM file is a normal QSAM file that is accessed via CBLTDLX. The XSAM field position (RSA) is stored on the Checkpoint Database along with the Checkpoint area. So in the event of a program failure (and subsequent restart), XSAM knows exactly where are in each XSAM file and can reposition accordingly.

XSAM calls a further module called BSAM to handle the flat file I/O.

CBLTDLX was used for a number of years until we got BMC/ARC. Incidentally, when we first started using BMC, we had a major performance problem. The idea with BMC checkpointing is to offer a CHKP at each LUW and allow the pacing criteria to decide whether to honour it. It turned out that BMC flushed buffers even when checkpoints had been skipped by the pacing logic. So we had all the overheads of doing real checkpoints even when they weren't honoured. We had to write an additional module (CBLTBMC) to use until BMC got fixed.


Regards,
B_G
Back to top
View user's profile Send private message
Kjeld

Active User


Joined: 15 Dec 2009
Posts: 365
Location: Denmark

PostPosted: Tue Feb 22, 2011 2:54 pm
Reply with quote

As far as I know, checkpoint pacing in IMS BMPs are solely controlled by application logic (or may be 3rd party software). So what you save in CBLTDLX for pacing logic may be spent in your application module.

I have even coded automatic restarting in some BMPs for parallel processing jobs that were prone to DB2 deadlocks.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> IMS DB/DC

 


Similar Topics
Topic Forum Replies
No new posts How to use ICMD command by CBLTDLI? IMS DB/DC 0
No new posts Doubt regarding multiple Database acc... IMS DB/DC 3
No new posts Difference between 'Exec DLI' and 'CB... IMS DB/DC 8
No new posts Objective Behind SSA's in the CBLTDLI... IMS DB/DC 2
Search our Forums:

Back to Top