SoftBase is committed to driving a better DB2 development experience. Combining decades of DB2 expertise, innovative testing and DB2 performance-tuning tools and an unmatched customer support and service team, SoftBase helps application developers and DB2 administrators deliver more reliable DB2 applications and create higher performing DB2 software.
Visit www.softbase.com/batch_healthcare_deadlock_advisor.php for more information!
3. SoftBase DeadLock Advisor
Business Challenges
DB2 organizations experience
deadlocks, timeouts, and resource unavailable
situations.
Delay batch processing
Time consuming to troubleshoot
DB2 syslog message problems
o Cryptic language
o Not always available to programmers, i.e., more work for the DBA
4. SoftBase DeadLock Advisor
DeadLock Advisor Solution
Every programmer and DBA involved can instantly see:
Which job was deadlocked (offended)
Which job caused the deadlock (offending)
A plain-English explanation of what happened
6. SoftBase DeadLock Advisor
HRDAILY
SBST375I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRDAILY. DB2 Subsystem DB8G. Plan HRDAILY is deadlocked by *
* HRMNTHLY (BATCH). Deadlocking plan is HRMNTHLY. *
* This job (HRDAILY)will receive a negative
SQLCODE. *
***********************************************************************
SBST501I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRDAILY. DB2 Subsystem DB8G. Tablespace Page *
* DGFDB008.DGFTS081.X'00007A' is involved in a deadlock condition. *
***********************************************************************
Deadlock
7. SoftBase DeadLock Advisor
HRMNTHLY
SBST375I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRMNTHLY. DB2 Subsystem DB8G. Plan HRMNTHLY has deadlocked *
* plan HRDAILY in HRDAILY (BATCH). This job (HRMNTHLY) is *NOT* *
* affected, but has caused HRDAILY to receive a deadlock condition. *
***********************************************************************
Deadlock
9. SoftBase DeadLock Advisor
HRDAILY
SBST376I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRDAILY. DB2 Subsystem DB8G. Plan HRDAILY is timed out due to *
* HRMNTHLY (BATCH). Requested resource is being held by plan *
* HRMNTHLY. This job (HRDAILY) will receive a negative SQLCODE. *
***********************************************************************
SBST501I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRDAILY. DB2 Subsystem DB8G. A lock request for Tablespace *
* Page DGFDB008.DGFTS081.X'00007A' could not be granted, and the *
* request waited for a period longer than the maximum specified by *
* the installation. *
***********************************************************************
Timeout
10. SoftBase DeadLock Advisor
HRMNTHLY
SBST376I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRMNTHLY. DB2 Subsystem DB8G. Plan HRMNTHLY has timed out plan *
* HRDAILY in HRDAILY (BATCH). This job (HRMNTHLY) is *NOT* affected, *
* but has caused HRDAILY to receive a timeout condition. *
***********************************************************************
Timeout
12. SoftBase DeadLock Advisor
HRHOURLY
SBST376I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRHOURLY. DB2 Subsystem DB8G. Plan HRHOURLY is timed out due *
* to CSB4 (TSO). Requested resource is being held by plan DSNESPRR. *
* This job (HRHOURLY) will receive a negative SQLCODE. *
***********************************************************************
SBST501I SOFTBASE DeadLock Advisor 531
***********************************************************************
* Job: HRHOURLY. DB2 Subsystem DB8G. A lock request for DBID/OBID *
* 00000279.00000010 could not be granted, and the request waited for *
* a period longer than the maximum specified by the installation. *
***********************************************************************
TSO Timeout
14. SoftBase DeadLock Advisor
HRDAILY
SBST501I SOFTBASE DeadLock Advisor
***********************************************************************
* Job: HRDAILY. DB2 Subsystem DB8G. An attempt was made to allocate *
* Database DGFDB008, but it is stopped for all access. *
* This job (HRDAILY) will receive a negative SQLCODE. *
***********************************************************************
Stopped Database
Stopped Database
In an environment where DB2 has to work well, application developers and database administrators turn to a provider who can offer the right experience. SoftBase delivers more than 20 years of expertise in DB2 tools, and an unmatched customer experience. SoftBase: Proven Technology; Proven Tools; Proven Partner.
Many DB2 organizations today experience deadlocks, timeouts and resource unavailable situations during batch processing. Determining the root cause of these batch-delaying problems is often a tedious task for DBAs. DeadLock Advisor makes the job of pinpointing these issues and which job caused them effortless by placing easy to understandmessages in the job log of both jobs involved in the deadlock, timeout, or resource unavailable condition. In this way, application developers can troubleshoot their jobs without the assistance of a DBA.DeadLock Advisor places a message in the job log of every batch job that experiences a deadlock timeout or resource unavailable condition. Further, for conditions involving two batch jobs, even though typically only one job receives a negative SQL code such as -911 (and neither job receives a message), DeadLock Advisor places a message in both job logs. The deadlock (or resource unavailable) condition is then instantly visible to any involved party. No other DB2 tool available pinpoints the source of deadlock timeouts in this manner.
DeadLock Advisor expedites this by placing an easy to understand message in the joblog of each application involved. Application developers can troubleshoot their own jobs without a DBA’s assistance.For conditions involving two applications, DB2 will return a negative sequel code for only one job, and neither job will receive a message. In contrast, DeadLock Advisor will place a message in both joblogs. The problematic condition, as well as it's cause, is instantly made visible to anyone involved. DeadLock Advisor is the only DB2 tool available that identifies the source of deadlock timeouts in this manner.
In this scenario, two applications have become deadlocked. The hr monthly application begins updating the project table, prior to updating the <rate speed="1"><pitch middle="-2">employee</pitch></rate> table, which is being updated by hr daily. When hr monthly attempts to update the <pitch middle="-2">employee</pitch> table, it must wait for hr daily to finish. While hr monthly waits, it keeps the project table locked.Hr daily then attempts to update the project table, which is of course still locked by hr monthly. The monthly application has deadlocked the daily application. Normally in this situation, only the daily application would receive a 911 sequel code, and <pitch middle="1">neither</pitch> application would receive a <pitch middle="-2">message</pitch>. To understand <pitch middle="2">why</pitch> this <pitch middle="-2">deadlock</pitch> <pitch middle="2">occurred</pitch>, a DBA would have to spend considerable time searching DB2 logs and other data sources. Deadlock advisor <pitch middle="1">saves</pitch> <pitch middle="-2">time</pitch> by placing an easy to <pitch middle="-2">understand</pitch>, <pitch middle="2">English</pitch> like <pitch middle="-2">message</pitch> in the <pitch middle="-1">joblog</pitch> of <pitch middle="1">both</pitch> <pitch middle="-1">applications</pitch>.
The offended application, hr daily, receives a message identifying the offending application, or the application that caused the deadlock. In this case, the offending application is hr monthly.
The offending application <pitch middle="1">also</pitch> receives a message, identifying the application that it deadlocked.
Deadlock Advisor also reports details on <pitch middle="-1">timeouts</pitch>. In this scenario, hr monthly causes hr daily to timeout. Normally, only hr daily would receive a 911 sequel code, and neither application would receive a message.
<pitch middle="1">Deadlock</pitch> advisor<pitch middle="-1"> places a message in hr daily's joblog, explaining that it was timed out due to hr <pitch middle="-2">monthly</pitch>.
Hrmonthly receives a message stating that it caused hrdaily to time out.
TS0 timeouts are reported to the offended application’s joblog. In this scenario, TS0 causes the hourly application to timeout.
The hourly application receives a message stating that it was timed out due to TSO.
If the database is stopped, an application will typically receive a 9 oh 4 sequel code. In this scenario, hr daily is attempting to update a table in a stopped database.
Hrdaily receives a message indicating that the database is stopped for all access.