|
知识路径: > 数据库技术 > 事务管理 > 数据库的并发控制 > 事务调度 > 事务调度 >
|
相关知识点:3个
|
|
|
|
若事务Ti提交失败,则应当撤销Ti的影响以保证其原子性。在允许并发执行的系统中,还必须确保依赖于Ti的任何事务Tj也中止。例如,Tj要读Tj写的数据,则称Tj依赖于Ti。
|
|
|
例如,下图所示的调度示例。假设系统允许T1执行完read(A)后立即提交,则T1就先于T0提交。假设T0在提交前发生故障,由于T1依赖T0(T1要读T0写的数据),为了保证事务的原子性必须中止T1的提交。但本例允许T1执行完read(A)后立即提交,导致T0发生故障后不能正确恢复的情景。
|
|
|
|
|
可恢复调度(recoverable schedule)应满足:当事务Tj要读事务Ti写的数据时,事务Ti必须要先于事务Tj提交。
|
|
|