Client logic lookup read several pages logic write

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: hase • Doesn’t lock DB during client logic computation Client code BEGIN lookup DB/FS/etc. {client logic} lookup read several pages {logic} ... write END read several pages write shadow copy of pages Validate Write • Groups reads & writes of same blocks close in time • “Pre-fetches” blocks for validation/write phase Validation: Serializability • Separately test all transactions consistent – Running alone on database, transaction assumed correct • Make transaction codes independent of each other – Happens-before only property of (data) values in db • All serial orderings of “concurrent” transactions are valid • Allow concurrent running if transformations are same as transforms possible from a serial order – Serializable Tentative state Real state or rollback Basic approach: transaction IDs • Serializability means a serial ordering exists • Select ID for each transaction a priori – Force DB updates to be equivalent to serial execution in numeric order of ID values – In validation phase, abort & retry transactions that would not meet this condition • Transforms lock queueing slowdowns for the risk of not making progress – ID selected at “begin” less concurrent if some read phases run much longer – Delay ID choice until validation or later to reduce aborts Conditions for validity • 1) Ti ends copyback before Tj reads start r v w r • For i<j, Transaction Ti must “precede” Tj • 1) Ti ends copyback before Tj reads start, or v w • 2) Tj reads nothing Ti writes and Ti ends copyback before Tj starts copyback, or – Actually serial ordering r • 2) Tj reads nothing Ti writes and Ti ends copyback before Tj starts copyback, or – Overlap of Tj reading with Ti copyback is harmless & Tj copyback is serialized after Ti copyback • 3) Tj reads & writes not...
View Full Document

This note was uploaded on 05/30/2013 for the course COMP SCI 15-812 taught by Professor Smith during the Spring '12 term at Carnegie Mellon.

Ask a homework question - tutors are online