28.11.2012 Views

read(y) - IBDS-OS Startseite

read(y) - IBDS-OS Startseite

read(y) - IBDS-OS Startseite

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Consistency Predicate<br />

BeginTransaction BeginTransaction<br />

old_balance := if bank.<strong>read</strong>(“espen”) -<br />

bank.<strong>read</strong>(“gerd”); bank.<strong>read</strong>(“gerd”) != $1M<br />

new_balance := then CallTheSEC();<br />

old_balance + $1M; EndTransaction(&commit)<br />

bank.write(“espen”,<br />

new_balance);<br />

EndTransaction(&commit)<br />

The above consistency predicate is quite simple:<br />

“Espen always has 1 M$ more than Gerd”.<br />

As long as one transaction’s operations happens entirely<br />

before(after) the other, consistency is still valid.<br />

SEC = Security and Exchange Commission<br />

Transactions<br />

However, interleaving of these operations might violate consistency!<br />

1 Espens’s favorite bank<br />

© 2009 Universität Karlsruhe, System Architecture Group 44

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!