From: Kevin D. <ke...@tr...> - 2006-03-04 06:34:31
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <STYLE type=text/css> P, UL, OL, DL, DIR, MENU, PRE { margin: 0 auto;}</STYLE> <META content="MSHTML 6.00.2900.2802" name=GENERATOR></HEAD> <BODY leftMargin=1 topMargin=1 rightMargin=1><FONT face=Tahoma size=2> <DIV><FONT face=Arial>Bryan-</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>I thought the following might be interesting to you (or at least help you get to sleep):</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV></DIV> <DIV><FONT face=Arial></FONT></DIV> <DIV><FONT face=Arial><A href="http://www.sai.msu.su/~megera/postgres/gist/papers/concurrency/p465-bernstein.pdf">http://www.sai.msu.su/~megera/postgres/gist/papers/concurrency/p465-bernstein.pdf</A></FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>Of particular interest is the concept of one-copy serializability, and that this can be proved by showing that the dependency graph of transactions involved in an MV transaction log can form an acyclic graph.</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>There are a couple of algorithms proposed, one of which makes a direct reference to using 2PL for update queries and time/transaction stamp resolution for read-only transactions.</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>hmmm - maybe it would be possible to promote a read-only transaction to a writable transaction? jdbm2 would apply the locking logic as if all of the reads to date were performed at that instant (but with 2PL enabled). If any of the records read so far are not valid, the transaction aborts immediately and can be re-executed as a writable transaction from the get-go... That would at least save the hassle of instantiating all of the objects, etc... unless an abort was really necessary...</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>Certainly, that's a refinement for the back-burner, but I wanted to toss it out as it occured to me.</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>- K</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial></FONT> </DIV> <DIV><FONT face=Arial>Kevin Day<BR>Trumpet, Inc.<BR><A href="http://www.trumpetinc.com"><FONT color=#0000ff>www.trumpetinc.com</FONT></A><BR><A href="mailto:ke...@tr..."><FONT color=#0000ff>ke...@tr...</FONT></A><BR>602-438-7030</FONT></DIV> <DIV><FONT face=Arial></FONT> </DIV></FONT></BODY></HTML> |