UniKL Logo

Lehrgebiet Informationssysteme

FB Informatik

FB Informatik
 
LG IS
AG DBIS
AG HIS
Jobs / Tasks
Courses
Publications
Contact
Misc
Impressum
(C) AG DBIS
 

Test Case taDOM2+/5-taDOM2+-23-PA

taDOM2+ Lock Requests of executed Operation getNextSibling(contextNode) returns null value

The getNextSibling operation returns null because the context node CO is the last child of parent node PA and no next sibling node NS exists.

Behavior specified with base operations:

  • readCO
  • useCONSE
  • usePALCE
Read Set = CO PALCE CONSE , Write Set =
  • LockRequest[node=CO,lock:NR,PSE:-,NSE:ER,FCE:-,LCE:-]
  • LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-]
  • LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:-,LCE:ER]

taDOM2+ Lock Requests of checked Operation appendChild(contextElementNode, childType, childValue) executed on node PA

The appendChild operation is executed on the context element node CO and appends a new child to the (at least one) already existing child nodes. The CX resp. NRCX lock on the context node is caused by the SX lock on the new child. The new appended child node (the new last child) is returned.

Bahavior specified with base operations:

  • readCO
  • modifyCOLCE
  • modifyLCNSE

Read and write sets for execution on PA:

Read Set = PA , Write Set = PALCE
  • LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:-,LCE:EX] on PA
  • LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on PA
  • LockRequest[node=LC,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] on PA

Operations must be incompatible

CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:ER,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:-,LCE:EX] on PA
Requested lock IX on AC compatible to existing lock IR.
Requested lock CX on PA compatible to existing lock IR.
Compatible
CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:ER,FCE:-,LCE:-]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on PA
Requested lock IR on AC compatible to existing lock IR.
Requested lock IR on PA compatible to existing lock IR.
Compatible
CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:ER,FCE:-,LCE:-]
with
Requested LockRequest[node=LC,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] on PA
Compatible
CheckExisting LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:-,LCE:EX] on PA
Requested lock IX on AC compatible to existing lock IR.
Requested lock CX on PA compatible to existing lock IR.
Compatible
CheckExisting LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on PA
Requested lock IR on AC compatible to existing lock IR.
Requested lock IR on PA compatible to existing lock IR.
Compatible
CheckExisting LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=LC,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] on PA
Compatible
CheckExisting LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:-,LCE:ER]
with
Requested LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:-,LCE:EX] on PA
On PA the last child edge lock ER is incompatible to the requested EX
Incompatible
CheckExisting LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:-,LCE:ER]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on PA
Compatible
CheckExisting LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:-,LCE:ER]
with
Requested LockRequest[node=LC,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] on PA
Compatible
Test Case Ok