home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / database / 6313 < prev    next >
Encoding:
Text File  |  1992-08-25  |  2.6 KB  |  55 lines

  1. Newsgroups: comp.databases
  2. Path: sparky!uunet!gatech!darwin.sura.net!mips!mips!decwrl!deccrl!news.crl.dec.com!news!nntpd.lkg.dec.com!nntpd.lkg.dec.com!shah
  3. From: shah@tay1.dec.com (Amitabh Shah)
  4. Subject: Re: distributed transactions
  5. In-Reply-To: edwards@world.std.com's message of Fri, 21 Aug 1992 12:44:30 GMT
  6. Message-ID: <SHAH.92Aug25125615@santur.tay1.dec.com>
  7. Sender: usenet@nntpd.lkg.dec.com (USENET News System)
  8. Organization: Digital Equipment Corporation, TAY1, Littleton MA
  9. References: <9208210244.AA07031@hplwk.hpl.hp.com> <BtC3E7.9yx@world.std.com>
  10. Date: Tue, 25 Aug 1992 17:56:15 GMT
  11. Lines: 42
  12.  
  13.  
  14. On Fri, 21 Aug 1992 12:44:30 GMT, edwards@world.std.com (Jonathan Edwards) said:
  15.  
  16. > In article <9208210244.AA07031@hplwk.hpl.hp.com> albert@HPLWK.HPL.HP.COM (Joseph Albert) writes:
  17. >>
  18. >>If a non-blocking commit protocol is used, any transaction started at
  19. >>a remote site which went down can be aborted, releasing its locks, and
  20. >>leaving the database in a transaction-consistent state.
  21. >>
  22. > Could you site some references or examples for this statement?
  23. > Certainly the conventional 2-phase commit protocol (which is what is
  24. > implemented by all commercial instances of distributed TP that I know of)
  25. > can easily leave you in a blocked-or-inconsistent state.
  26.  
  27. A non-blocking commit protocol will have to be at least a 3-phase commit. It
  28. was shown by Dale Skeen ("Non-blocking Commit Protocols", I think it's in ACM
  29. SIGMOD proceedings, circa 1981). Skeen also proves that by inserting a third
  30. phase called "prepare to commit" (between the canonical "wait" and "commit"
  31. phases of the 2-phase commit), one can avoid blocking. Thus, 3-phase is a
  32. necessary and sufficient condition for non-blocking. 
  33.  
  34. Of course, you have to pay the penalty for the third phase (an extra round of
  35. communication between the coordinator and its cohorts); this can be
  36. substantial. One way of reducing this overhead is to have few sites (>2)
  37. execute the 3-phase protocol; the others can still execute 2-phase. As long as
  38. one of the first set is operational, this will be a non-blocking commit. This
  39. way one can have a non-blocking protocol with a very high probability. 
  40.  
  41. Most of this discussion has been academic: I don't know of any real
  42. (commercial) db product using 3-phase commit.
  43.  
  44. -amitabh.
  45.  
  46.  
  47.  
  48. --
  49. ______________________________________________________________________________
  50. Amitabh Shah                                   shah@tay1.dec.com----(INTERNET)
  51. Digital Equipment Corporation                  santur::shah----------(EASYNET)
  52. Software Performance Group                     +1 508 952 4430---------(PHONE)
  53. 151 Taylor St. Littleton MA 01460              +1 508 952 4197-----------(FAX)
  54.  
  55.