Hello Dana,
Thank you for taking the time to use our CA Communities facility to post questions!
I noted that in your latest question you mentioned that you have decommissioned BMC AppTune.
A CA DB2 tools product that more closely matches AppTune would be our CA Detector product.
Both products are meant to be SQL Analysis tools, while Insight is an overall DB2 monitor, in the same vein as BMC Mainview.
So there will be some differences in functionality, mainly because Detector relies on reading control block structures to gather SQL statistics, and details like SQL text and host variables,
Insight, like most DB2 monitors, collects it's data using DB2's IFI facility. It starts traces and then reads the Ifcid records that are generated.
My apologies if you already know this, just wanted to ensure we are on the same page with regards to Insight's capabilities versus a product like AppTune.
But to answer your question regarding Insight's Timeout and Deadlock History, I'm assuming you are referring to the option available on the Active Threads display, option 4, the LOCKCONT panel.
As opposed to the panels available from System History, which you were discussing with Keith previously.
Please let me know if that isn't the case.
This panel, even though it has "History" in it's title, is not dispalying history data read from a history datastore, which is what System History is doing.
Everything in Insight depends on IQL, Insight Query Language, and in this case, the LOCKCONT IQL request. You can find it in the CDBATREQ library.
If you browse this member, you will see this line near the end:
NEVENTS=120.
This causes Insight to keep 120 occurrences of the Ifcif records used by this IQL request in active memory. It's an internal table.
And when it gets to the 121st, then the oldest entry drops off the internal table.
So how far back in time you can go for this panel is based on recent activity.
However, since this is IQL, you are free to modify it if you wish. We have clients that do this on a regular basis, even write custom IQL to suit their requirements.
So you could increase the value used in the NEVENTS statement to get more data stored internally.
Of course, more data means more storage used. And there is no ready method to determine what value will get you a full weeks worth of data.
Thankfully there is no need, because the system history displays accomplish the same thing, only the data persists longer because it is using an actual history datastore.
The Ifcids involved get written to our System Hisotry datasets because the Ifcid 172 and 196 records are listed in the HIST-STATS-RECS sysparm.
And these Ifcids get written to System History based on the HISTORY-STATS-TIME parm, which defaults to 30 minutes.
However, you could change this to a smaller interval if you wish. We have clients that have it set to 1 minute. for example.
And given the nature of the System History datastore, it is very easy to have data that goes back several weeks, if not months.
But the point is that what you see on the Timeout and Deadlock History panel will very closely resemble the display on the System History Deadlock and Timeout List panel.
At least after 30 minutes have past from your current viewing of the Active Threads panel!
The other thing I wanted to point out is the display of SQL text.
Both Detector and AppTune are designed to gather this information in a very effecient manner.
Insight does not do this, because the cost using traditional Ifcid traces is too high.
So when viewing the data on the Timeout and Deadlock panels, either from Active Threads or System History, the technique Insight uses to dispaly SQL text is very basic.
If the SQL is static, then it fetches the SQL text from the catalog.
But if the SQL is dynamic, Insight gets the SQL text from the Dynamic Statement cache. Or at least Insight's snapshot of it.
It uses the DYNSQLTX panel to display the information.
And the quantity of dynamic statement cache SQL text stored by Insight is based in the DYNSQLST IQL request, which has a NEVENTS value of 10000.
Quite sizeable, but not sure how far back that would be in a very active system.
Again, you could play with the value, but then you have to consider storage utilization in the Insight DC address space.
I suspect the internal table for Insight's DYNSQLST IQL request is not likley to have the sql text for a timeout or deadlock thread which occurred several days in the past.
So there is a limitation with Insight's capabilities in this area.
Hope the above information proves helpful.
Regards
Michael Murray