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 表。 它删除行。