T1          T2                      
          read(C)      read(A) 
          C:=C+1        A:=A+1 
          write(C)      write(A) 
          read(A)      read(B) 
          A:=A+2        B:=B+1 
          write(A)      write(B) 对上图的事务T1和T2,构造一个符合两阶段协议,并且冲突等价于串行调度 <T1;T2>的并发调度. 
    这是4级数据库中的一道题目,在下实在做不出来,劳烦大侠指点

解决方案 »

  1.   

    要求冲突等价于串行调度 <T1;T2>的并发调度...
    只能是一开始就取得Xlock吧,不然2阶段锁也可以造成死锁的发生。T1                      T2
    ------------------------------------
    XLOCK (C)              SLOCK (A)
    XLOCK (A)              等待
                           
    READ  (A)              
    C:=C+1
    WRITE (C)
    A:=A+2
    WRITE (A)UNLOCK (A)             XLOCK (A)
    UNLOCK (C)             XLOCK (B)                       READ  (A)
                           A:=A+1
                           WRITE (A)
                           READ  (B)
                           B:=B+1
                           WRITE (B)                       UNLOCK (B) 
                           UNLOCK (A)
      

  2.   

    看了楼主的题,本人自我评定: -4级 数据库工程师jf and 学习