Re: Oracle replication wasRe: Sybase 11 TPCC on DEC (your comments please)

From: Thomas J Kyte <tkyte_at_us.oracle.com>
Date: 1996/01/30
Message-ID: <4ejgn6$3i7_at_inet-nntp-gw-1.us.oracle.com>#1/1


odysscci_at_teleport.com (Jim Kennedy) wrote:

>>While with the two-phased commit strategy you can be sure that all
>>replicate databases are consistent at any given time with the primary,
>>performance does suffer and the possibility of transaction rollback at
>>all sites increases with each replicate database entered into the
>>system - if one replicate database is unavailable, the transaction
>>fails at all sites.

Nope, the above is completely wrong.

First, the 2pc strategy you outlined above would not gaurantee that all replicate database are consistent at any given time with the primary but that doesn't matter cause that is not the way it happens.

Oracle uses the 2pc to ensure that
- a transaction is delivered to a remote site at least once - a transaction is delivered to a remote site at most once

Transactions are pushed out to each site independent of the other sites involved. If SITE-A needs to replicate to SITE-B and SITE-C and SITE-C is not available, SITE-B will still get replicated to. The replication from A to C will be deferred until C is available.

>>With the asynchronous commit strategy, failure of one replicate
>>database does not affect the primary database or any other replicate
>>database. The transaction will be applied at the failing site once the
>>database is back on-line, while all the other databases in the system
>>committed the transaction as soon as it was received.

Same here with a 2pc to push the transactions out.

Failure of one replicate database does not affect the primary or any other replicate database.

>>----------------------
>>Greg Carter
>>Sybase InformationCONNECT Division
>>Replication Agent Development

Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government Received on Tue Jan 30 1996 - 00:00:00 CET

Original text of this message