Technical data

Using the ttTraceMon utility
1-12 Oracle TimesTen In-Memory Database Troubleshooting Procedures Guide
The trace buffer contains the following information showing all level 1 deadlock
traces, as evidenced by ’1L’.:
Trace> dump
09:50:26.444 13 DEADLOCK 1L 2036C 3484P edge 1: xid 3.2, cid 3,
<Row BMUFVUAAAAaAAAADzk,0x8c5
74(574836)> 0 cnt=1 , Tbl 'T1', SQL='update t1 set y1=y1 where x1=1'
09:50:26.455 14 DEADLOCK 1L 2036C 3484P edge 0: xid 2.1, cid 2,
<Row BMUFVUAAAAaAAAAETk,0x8c5
74(574836)> 0 cnt=1 , Tbl 'T1', SQL='update t1 set y1=y1 where x1=2'
09:50:26.455 15 DEADLOCK 1L 2036C 3484P Victim: xcb:3.2,
SQL='update t1 set y1=y1 where x1=1'
If you want more informatin, set DEADLOCK tracing to a higher value. For example,
the following sets DEADLOCK tracing to level 4 in ttTraceMon:
Trace > level deadlock 4
LOCK tracing
Use the LOCK component to trace the locking behavior of your application to detect
trouble with deadlocks or lock waits. LOCK tracing generates a great deal of volume,
so it is important to choose the appropriate level of tracing. Level 3, for example,
begins to generate a large number of traces, as traces are written for fairly common
events. In addition, the traces themselves may be somewhat hard to read in places. If
you cannot discern enough information for your purposes, contact Technical support
for more information.
Table 1–4 describes the LOCK tracing levels. Each level with a ’+’ sign includes the
trace information described for that level, plus all levels preceding it.
Example 1–11 LOCK trace
In this example, we execute ttTraceMon to do a LOCK trace at level 4 on myDSN data
store.
We make two connections to myDSN. For the first connection, we set autocommit on.
We create table test and insert three rows. We create a materialized view using table
test.
We turn on tracing at level 4 and use the flush command to empty the buffer.
% ttTraceMon myDSN
Trace monitor; empty line to exit
Trace> level lock 4
Trace> flush
Table 1–4 LOCK tracing levels
Level Output
1 Deadlock cycles as they are discovered.
2 + Failures to grant locks for any reason.
3 + Lock waits (which may or may not be granted).
4 + All lock grants/releases, some routine calls, and the mechanism of the deadlock
detector.
6 + Each step in cycle traversal.