2008-6-25 19:12
neilkooo
这里有人研究11g的Online Application Patching & Upgrade特性吗?
几个editioning-view的问题。
Q1 : editioning-view就是用于解决table schema的versionablity的问题的。一般来说editioning-view放在table schema的前面从而来实现online app patching的目的。应该说有了这个editioning-view(App code参照的是editioning-view而不是直接参照的underlying table),table schema就可以在OLTP运行的时候往上面打DDL(限定2种,column addition&column versioning)。 我的这个理解对不对?
Q2 : 如果上面的理解没问题,那么再看一下对一个OLTP系统作column addition。想象一下这个场景: 一个OLTP正在通过editioning-view向underlying table中更新数据,这个时候column addition的DDL来了,他需要在表上来个全表排他锁,因此要等锁队列中的前面的锁都释放掉,才能开始做这个column addition。那么这还算是online的吗?更何况,再column addition的过程中,因为它一直把持着表上的排他锁,因此,如果这个column addition的持续时间是1天的话,那么这个OLTP也是一天都不可用。这就达不到oracle 11g所鼓吹的online app patching特性.
请各位大虾,如果有了解以上内容的看我理解的对否~