events_stages_current
表包含当前阶段事件。该表为每个线程存储一行,显示该线程最近监视的阶段事件的当前状态,因此没有用于配置表大小的系统变量。
在包含阶段事件行的表中,events_stages_current
是最基本的一个。其他包含阶段事件行的表在逻辑上派生自当前事件。例如,events_stages_history
和 events_stages_history_long
表分别收集了最近结束的阶段事件,每个线程最多存储一定数量的行,以及在所有线程范围内全局存储一定数量的行。
有关三个阶段事件表之间关系的更多信息,请参阅 第 29.9 节,“用于当前和历史事件的性能架构表”.
有关配置是否收集阶段事件的信息,请参阅 第 29.12.5 节,“性能架构阶段事件表”.
events_stages_current
表具有以下列
THREAD_ID
,EVENT_ID
与事件关联的线程,以及事件开始时的线程当前事件编号。
THREAD_ID
和EVENT_ID
值组合在一起可以唯一标识该行。没有两行具有相同的数值对。END_EVENT_ID
此列在事件开始时设置为
NULL
,并在事件结束时更新为线程当前事件编号。EVENT_NAME
生成事件的工具的名称。这是
setup_instruments
表中的NAME
值。如 第 29.6 节,“性能架构工具命名约定” 中所述,工具名称可能包含多个部分并形成层次结构。SOURCE
包含生成事件的工具化代码的源文件名称,以及在文件中执行工具化操作的行号。这使您能够检查源代码以确定确切涉及的代码。
TIMER_START
,TIMER_END
,TIMER_WAIT
事件的计时信息。这些值的单位是皮秒(万亿分之一秒)。
TIMER_START
和TIMER_END
值指示事件计时开始和结束的时间。TIMER_WAIT
是事件经过的时间(持续时间)。如果事件尚未结束,
TIMER_END
是当前计时器值,而TIMER_WAIT
是到目前为止的经过时间 (TIMER_END
−TIMER_START
)。如果事件是从
TIMED = NO
的工具生成的,则不会收集计时信息,并且TIMER_START
、TIMER_END
和TIMER_WAIT
都为NULL
。有关皮秒作为事件时间的单位以及影响时间值的因素的讨论,请参阅 第 29.4.1 节,“性能架构事件计时”.
WORK_COMPLETED
,WORK_ESTIMATED
这些列提供阶段进度信息,用于已实施以生成此类信息的工具。
WORK_COMPLETED
指示已完成的阶段工作单元数量,而WORK_ESTIMATED
指示预计的阶段工作单元数量。 有关更多信息,请参阅 阶段事件进度信息。NESTING_EVENT_ID
此事件嵌套其中的事件的
EVENT_ID
值。 阶段事件的嵌套事件通常是语句事件。NESTING_EVENT_TYPE
嵌套事件类型。 该值为
TRANSACTION
、STATEMENT
、STAGE
或WAIT
。
events_stages_current
表具有以下索引
主键在 (
THREAD_ID
,EVENT_ID
) 上
TRUNCATE TABLE
允许用于 events_stages_current
表。 它删除行。