Skip to main content

Lock tree

Home > Select Project > Analysis > Lock Tree

This tool analyzes the trend of locks that occurred during the day. This function allows you to visually check the tree structure of the session that generated the lock (lock holder) and the session waiting for the lock (lock waiter). You can analyze the relationship between the holder and waiter of the lock that occurred at a specific time point.

Key features are as follows:

  • Lock trend analysis: The trends of locks that occurred during the set search period are traced over time and displayed in a graph. This allows you to visually check how the locks are created and resolved.

  • Check lock holder and waiter: You can see the holder and waiter for each lock in a tree structure. Through this, when a specific lock occurs, you can check the relationship between the session that generated the lock and the waiting session.

  • Inter-session relationship analysis: By analyzing the relationship between the session that generated the lock and the waiting session, you can identify the cause of the lock that occurred during the query execution and transaction handling.

This allows the database administrator to quickly identify and resolve lock-related issues and optimize the database performance.

Basic usage guide

Lock tree

Set the desired number1 date and time, and then select an instance from the number2 list. If a lock occurs at the set time, lock wait sessions and the retrieved data appear in the table at the bottom of the screen.

Column information guide

For more information about columns, see the link.

ItemDescription
sidSession ID
cpu(xos)CPU utilization collected by the installed XOS
serial#Value to increment to determine if the same session ID has been used.
usernameDB user name.
commandSame as COMMAND_TYPE; SQL command number
statusSession status
schemanameSchema. Same as the username.
osuserUsername of the OS that accessed the session.
spidOS process ID.
processID of the client process that accessed the session.
logon_timeSession created time point.
last_call_etIf the session is active, it is the elapsed time (sec) since activation.
sql_textquery, running statement, SQL statement that separates literal strings
sql_paramLiteral value separated from query
prev_sql_textPreviously executed query
prev_sql_paramPreviously executed query param
programProgram information executed by client
typesession type - can be adjusted in user background recursive (whatap.conf).
seq#Number that uniquely identifies the current or last wait (incremented with each wait)
eventNumber of the resource or event if the session is waiting.
p1First waiting event parameter (decimal point)
p2Second waiting event parameter (decimal point)
p3Third waiting event parameter (decimal point)
wait_classClass name of the waiting event
wait_timeThe value is 0 if the session is waiting. It is the last waiting time (milliseconds) if the value is greater than 0.
seconds_in_waitTime spent waiting for the wait if the session is waiting. Otherwise, it is the time elapsed since the last waiting.
stateWaiting state: WAITING, WAITED UNKNOWN TIME, WAITED SHORT TIME, WAITED KNOWN TIME
machineName of the client server that accessed the session (hostname)
portClinet port number
terminalClient terminal name
moduleName of the module set by the user of the program executed on the client.
actionAction name set by the user of the running module.
client_infoClient information set by user
client_identifierClient ID set by user
session logical readsNumber of times data was read into the buffer cache
physical readsNumber of data reads from the physical disk
execute countSQL execution count
parse count (hard)Total number of syntax analysis calls (actual syntax analysis)
parse count (total)Total number of syntax analysis calls (hard, soft, describe)
opened cursors currentNumber of open cursors
db block changesChange count of all blocks in the database
session pga memorySession's current PGA size
undo_segidUndo information ID
undo_blkUndo block count
undo_recUndo record count
sql_addressSQL statement identification data
sql_hash_valueSQL statement identification data
sql_idSQL ID of the running SQL statement
sql_child_numberSub number of the running SQL statement
sql_exec_startStart time point of SQL running in the session
sql_exec_idSQL running ID
prev_sql_addrInformation that identifies the last run SQL statement
prev_child_numberSub number of the last SQL statement executed
prev_exec_startStart time point of the last SQL statement executed
prev_exec_idStart ID of the last SQL statement executed
plsql_entry_object_idObject ID of the top PL/SQL subprogram on the stack.
plsql_entry_subprogram_idID of the top PL/SQL subprogram on the stack.
plsql_object_idSubprogram ID of the running PL/SQL object
taddrTransaction address
lockwaitlock wait address (lock address where the session is waiting)
row_wait_objObject ID of the table containing the row specified in ROW_WAIT_ROW#
row_wait_fileID of the data file containing the row specified in ROW_WAIT_ROW#
row_wait_blockID of the block containing the row specified in ROW_WAIT_ROW#
row_wait_rowCurrently locked row
pdml_statusIf the value is ENABLED, the session is in PARALLEL DML activation mode. If the value is DISABLED, the session does not support the PARALLEL DML activation mode. If the value is DISABLED, the session does not support the PARALLEL DML activation mode.
pq_statusIf the value is ENABLED, the session is in PARALLEL QUERY activation mode. If the value is DISABLE, the session does not support the PARALLEL QUERY activation mode. If the value is FORCED, it indicates the session was changed to force the use of PARALLEL QUERY.
blocking_session_statusIt provides details about whether there is a blocking session.
blocking_instanceInstance ID for the blocking session
blocking_sessionSession ID for the blocking session
final_blocking_session_statusIt provides details about whether there is a last block session.
final_blocking_instanceInstance ID for the last blocking session
final_blocking_sessionSession ID for the last blocking session
service_nameService name of the session. It is similar to the DB name.
saddrSession address
con_idID of the container associated with the data (only for multi-database support)
rss(xos)OS metrics collected by the XOS agent
pss(xos)OS metrics collected by the XOS agent
ioread(xos)OS metrics collected by the XOS agent
iowrite(xos)OS metrics collected by the XOS agent
Note

WhaTap basically stores the client-related information.