ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 软解析和硬解析

软解析和硬解析

原创 Linux操作系统 作者:hnhycwh 时间:2012-07-07 23:25:26 0 删除 编辑
9i-10g 术语

1、用“library cache lock”代表名为library cache lockenqueue

2、用“library cache pin”代表名为library cache pinenqueue

3、用“Child library cache”代表名为library cache的子latch

4、用“Child shared pool”代表名为shared pool的子latch

5、用“Child library cache lock”代表名为library cache lock的子latch

6、用“Child library cache pin”代表名为library cache pin的子latch

10.2.0.2 mutex 取代了cursor的library cache pin  软解析不再需要持有child library cache pin

11gR1 mutex 替换了library cache 相关的latch

1SQL在硬解析的时候,会先去持有Child library cache以扫描library cache object handle链表,接着会释放Child library cache(因为找不到相关的library cache object handle),接下来会再次持有Child library cache(因为要修改library cache object handle链表),然后在不释放Child library cache的情况下进而去持有Child shared pool以分配内存,接着释放Child shared pool(因为已经分配完了),接着再释放Child library cache;然后因为要以null模式获得library cache lock,所以要先持有Child library cache lock;接着要把相关sql的执行计划load到对应的子cursorlibrary cache object handle中,即要以exclusive模式获得library cache pin,所以要先持有Child library cache pin

2SQL在软解析的时候和硬解析类似,只不过不需要持有Child shared pool并且持有Child library cache的时间会更短。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27131216/viewspace-734884/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-07-05

  • 博文量
    14
  • 访问量
    3443