今天把数据导入到测试环境上准备搭建测试环境,在编译无效对象快了一下,然后就不动了。我第一反应是否被卡住,于是查询v$session_wait这个表,发现了一个single-task message等待事件。为了快速解决问题,错误对象不多,我一个个编译,发现有个视图是有db_link,编译这个视图会很慢,然后报超时。果断把db_link删掉,然后按照测试环境重建,重新编译,非常快。
网上查了些资料确实是db_link造成的,产生了网络超时。
single-task message oracle的解释是:
When running single task, this event indicates that the session waits for the client side of the executable.