客户反应一个库上的import操作很慢,生成了当时时间段的awr报告,发现top事件中出现:statement suspended, wait error to be cleared
这个等待事件倒是第一次看到,单从语句方面进行理解:语句站厅,等待错误被处理。
于是让客户查看alert日志,查看是否有报错信息,
果然alert日志里面出现如下信息:
ORA-01652: unable to extend temp segment by 128
in
tablespace SYSTEM
原来是SYSTEM表空间空间不足了,当时就产生了一个疑问,因为这个导入操作只是导入一张业务表,应该感觉用不到system表空间。
然后想起上次一个故障排查,记得oracle在做export/import的时候,会在执行export/import操作的用户下创建一张类似这样的表SYS_EXPORT_TABLE_02,并朝表中记录信息,大概会有十几兆的大小。
这样就比较清楚了,客户的import操作采用的是system用户,该此时system表空间很小,再在其中生成一个SYS_IMPORT_TABLE_02这样的表,导致alert里面报system表空间扩展失败的错误,这时候便使得import操作处于hang状态,直到system表空间空间问题被解决方能继续执行。
解决方法很简单,给system表空间增加空间即可。