Podstrony
- Strona startowa
- Chmielewska Joanna Slepe Szczescie (www.ksiazki4u
- Freedom Long Max Wiedza tajemna w praktyce
- Corel DRAW (5)
- adam smit undesnii bayalag
- Gibson William Swiatlo wirtualne
- Louis Pommier Dizionario omeopatica d'urgenza
- Sapkowski Andrzej Pani Jeziora
- balzac honoriusz ojciec goriot (2)
- Dav
- Herbert Frank Heretycy Diuny
- zanotowane.pl
- doc.pisz.pl
- pdf.pisz.pl
- dudi.htw.pl
[ Pobierz całość w formacie PDF ]
.Specifically, the commit point strength determines whether agiven node is the commit point site in the distributed transaction.3-8 Oracle8 Server Distributed Database SystemsThis value is specified using the initialization parameterCOMMIT_POINT_STRENGTH (see page 3-8).The commit point site isdetermined at the beginning of the prepare phase.The commit point site is selected only from the nodes participating in thetransaction.Once it has been determined, the global coordinator sendsprepare messages to all participating nodes.Of the nodes directly referencedby the global coordinator, the node with the highest commit point strength isselected.Then, the initially-selected node determines if any of its servers (othernodes that it has to obtain information from for this transaction) has a highercommit point strength.Either the node with the highest commit point strength directly referenced inthe transaction, or one of its servers with a higher commit point strengthbecomes the commit point site.Figure 3-2 shows in a sample session tree thecommit point strengths of each node (in parentheses) and shows the nodechosen as the commit point site.Figure 3-2: Commit Point Strengths and Determination of the Commit Point SiteSALES.ACME.COM(45)HQ.ACME.COM(165)WAREHOUSE.ACME.COM(140)FINANCE.ACME.COM HR.ACME.COM(45) (45)The following conditions apply when determining the commit point site:" A read-only node (a node which will not change its local data for thetransaction) cannot be designated as the commit point site.Distributed Transactions 3-9" If multiple nodes directly referenced by the global coordinator have thesame commit point strength, Oracle8 will designate one of these nodesas the commit point site." If a distributed transaction ends with a rollback, the prepare and commitphases are not needed, consequently a commit point site is neverdetermined.Instead, the global coordinator sends a ROLLBACKstatement to all nodes and ends the processing of the distributedtransaction.The commit point strength only determines the commit point site in adistributed transaction.Because the commit point site stores informationabout the status of the transaction, the commit point site should not be a nodethat is frequently unreliable or unavailable in case other nodes needinformation about the transaction s status.As Figure 3-2 illustrates, the commit point site and the global coordinator canbe different nodes of the session tree.The commit point strengths of each nodes is communicated to thecoordinator(s) when the initial connections are made.The coordinator(s)retain the commit point strengths of each node they are in directcommunication with so that commit point sites can be efficiently selectedduring two-phase commits.Therefore, it is not necessary for the commit pointstrength to be exchanged between a coordinator and a node each time acommit occurs.Specifying the Commit Point Strength of an InstanceSpecify a commit point strength for each node that insures that the mostcritical server will be non-blocking if a failure occurs during a prepare orcommit phase.A node s commit point strength is set by the initialization parameterCOMMIT_POINT_STRENGTH.The range of values is any integer from 0 to255.For example, to set the commit point strength of a database to 200, includethe following line in that database s parameter file:COMMIT_POINT_STRENGTH=200Additional Information: See your Oracle operating system-specificdocumentation for the default value.3-10 Oracle8 Server Distributed Database SystemsA Case StudyThis case study illustrates:" the definition of a session tree" how a commit point site is determined" when prepare messages are sent" when a transaction actually commits" what information is stored locally about the transactionThe ScenarioA company that has separate Oracle8 servers, SALES.ACME.COM andWAREHOUSE.ACME.COM.As sales records are inserted into the SALESdatabase, associated records are being updated at the WAREHOUSE database.The ProcessThe following steps are carried out during a distributed transaction that entersa sales order:1.An application issues SQL statements.At the Sales department, a salesperson uses a database application toenter, then commit a sales order.The application issues a number of SQLstatements to enter the order into the SALES database and update theinventory in the WAREHOUSE database.These SQL statements are all part of a single distributed transaction,guaranteeing that all issued SQL statements succeed or fail as a unit.This prevents the possibility of an order being placed but, inventory isnot updated to reflect the order.In effect, the transaction guarantees theconsistency of data in the global database.As each of the SQLstatements in the transaction executes, the session tree is defined, asshown in Figure 3-3
[ Pobierz całość w formacie PDF ]