上周五快下班了,开发那边找到我,说一个resize操作做了40分钟还没执行完,让我看看。
因为该开发所属的系统在exadata上,12c的库,我下意识的觉得,又来bug了。
登上数据库查看,该操作是将一个500g的bigfile文件resize为700g,该会话的等待事件是:enq:TT-contention
该等待事件在以前的版本是跟temporary table有关,在8i版本以后,更多的参与表空间事务管理。
以下是对enq:TT-contention等待事件的详细说明:
该enqueue TT队列锁用以在各种类型的表空间操作执行过程中避免出现死锁dead lock。
该enqueue lock的 ID2表明正在执行的操作种类,ID1表明该操作对应的表空间号V$Tablespace.TS#。
ID1/ ID2的含义
id1是tablespace number V$Tablespace.TS#,ID2表明执行中的操作类型。以下是操作类型对应代码;
0- 用以避免在drop tablespace和创建rollback segment之间发生死锁
1- 用以串行化在给定表空间上创建数据文件
<