[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference ulysse::rdb_vms_competition

Title:DEC Rdb against the World
Moderator:HERON::GODFRIND
Created:Fri Jun 12 1987
Last Modified:Thu Feb 23 1995
Last Successful Update:Fri Jun 06 1997
Number of topics:1348
Total number of notes:5438

462.0. "Who's got 2 phase commit?" by FRAMBO::ANTICEVICH () Thu Oct 19 1989 20:09

    Do Oracle or Ingres have 2 phase commit?
    
    Thanking you in advance.
    
    Regards
    Birgit Anticevich
T.RTitleUserPersonal
Name
DateLines
462.1No.KCBBQ::DUNCANGerry DuncanThu Oct 19 1989 20:381
No.
462.2maybe TandemZPOV01::JEFFREYCHOYLife goes on without meMon Oct 23 1989 18:105
    I understand that only TANDEM NONSTOP/SQL is the closest to what we called
    a fully distributed database. And it costs megabucks I heard.
    
    
    Jeffrey
462.3Not That ExpensiveSQLRUS::BOOTHWhat am I?...An Oracle?Mon Oct 23 1989 23:184
    Megabucks? NonStop SQL is included with the operating system. And yes,
    it's the only thing commercially available that is fully distributed.
    
    ---- Michael Booth
462.4Sybase and Interbase sort of.UBEAUT::CLEARYA deviant having fun..."Thu Oct 26 1989 15:3515
    Sybase and Interbase have some primitive support for 2PC.  They support
    a `prepare to commit' call as well as commit.  This allows the
    application to co-ordinate multiple transactions on multiple databases. 
    
    This isn't what real 2PC is about since there are miriad failure modes
    which the poor application programmer must deal with, most of which
    most of us would never dream of.  For example, what happens when all
    transactions have successfully completed the prepare to commit and the
    application has issued commits to every database but there is a failure
    somewhere which prevents one of the databases from committing.  When
    the error is corrected, the database should proceed to commit, not to
    rollback as you would expect.  Now, tell me how you handle that in an
    application.
    
    -mark
462.5StarbaseHGOVC::DEANGELISTie me rickshaw down sportThu Oct 26 1989 19:074
    Also Cognos Starbase has a 2PC protocol which must be similar to MArk's
    description in .-1 since it is based on either Sybase or Interbase.
    
    John.
462.6ACESMK::CHELSEAMostly harmless.Thu Oct 26 1989 22:3015
    Re: .4, .5
    
    Wasn't Starbase previously called Interbase?  Or am I getting the
    various "bases" confused?
    
    As I recall, Rdb/ELN (the DSRI-compliant database for VAXELN) has a
    similar rudimentary two-phase commit -- a PREPARE statement is
    available.  (This should not come as a big surprise, given the origins
    of at least one third-party product.)  I think it maintains a sort of
    chain of record versions; this is how it does snapshots without using
    a snapshot file.  At some point, the latest version gets linked into
    the chain.  I've only seen an overview-y description (and that was some
    time ago), so I don't really know how the rollback worked, but it sure
    looked like most of the work of maintaining database integrity was left
    to the programmer.
462.7InterBaseCLYPPR::BOOTHWhat am I?...An Oracle?Thu Oct 26 1989 22:429
    InterBase (aka StarBase) allows the program to attempt to commit a
    transaction that affects multiple databases. The problem is that should
    one of the updates fail, all that happens is a flag is raised in the
    database. The DBA must see the flag, then use the GFIX utility to
    manually bring the databases back in sync.
    
    Hardly state-of-the-art.
    
    ---- Michael Booth
462.8Even COGNOS admit the lack of functionality !!!SNO78C::BELAKHOVThe ORACLEBUSTER !!!Fri Oct 27 1989 06:179
    re.5 & .7
    
    COGNOS's marketing literature says that "their" database STARBASE
    has 2PC, however in a private discussion I had with one of their
    reps, he stated that they do not recommend their customers use this
    functionality for anything but very simple transactions, i.e. 2
    databases on the same machine.
    
    Michael
462.92PC isn't just database-specificLACKEY::HIGGSSQL is a strongly-hyped languageMon Oct 30 1989 22:1611
It's important to remember that applications do more than just database access.
Whatever else they do (file access, message sends, printing, whatever) should
also play in the 2PC arena.  So don't just treat 2PC as a simple YES/NO 
knock-off item on the database.  You need to ask:

1) Does the vendor supply a 2PC coordinator?  Or is the user expected to write
that?

2) What products (not just database) work with that coordinator?

and probably other questions, too.
462.10WIBBIN::NOYCEBill Noyce, FORTRAN/PARALLELMon Oct 30 1989 23:361
    (Ever issued a ROLLBACK to the cash-dispenser?)