In a CO schedule the commitment events'( directed ) conflict graph ( precedence graph, serializability graph ), as induced by their conflicting access operations ( usually read and write ( insert / modify / delete ) operations; CO also applies to higher level operations, where they are conflicting if noncommutative, as well as to conflicts between operations upon multi-version data ).
12.
It is often detected using a " wait-for graph " ( a graph of conflicts blocked by locks from being materialized; conflicts not materialized in the database due to blocked operations are not reflected in the precedence graph and do not affect " serializability " ), which indicates which transaction is " waiting for " lock release by which transaction, and a cycle means a deadlock.
13.
It is often detected using a " wait-for graph " ( a graph of conflicts blocked by locks from being materialized; it can be also defined as the graph of non-materialized conflicts; conflicts not materialized are not reflected in the precedence graph and do not affect serializability ), which indicates which transaction is " waiting for " lock release by which transaction, and a cycle means a deadlock.
14.
There exists an edge from a first transaction to a second transaction, if the second transaction is " in conflict " with the first ( see Conflict serializability above ), and the conflict is "'materialized "'( i . e ., if the requested conflicting operation is actually executed : in many cases a requested / issued conflicting operation by a transaction is delayed and even never executed, typically by a lock on the operation's object, held by another transaction, or when writing to a transaction's temporary private workspace and materializing, copying to the database itself, upon commit; as long as a requested / issued conflicting operation is not executed upon the database itself, the conflict is "'non-materialized "'; non-materialized conflicts are not represented by an edge in the precedence graph ).