70-516 · Question #77
You use Microsoft Visual Studio 2010 and Microsoft .NET Framework 4.0 to create an application. The application connects to several SQL Server databases. You create a function that modifies customer…
The correct answer is B. Call the EnlistDurable method of the Transaction class. Enlisting Resources as Participants in a Transaction Implementing a Resource Manager Committing a Transaction in Single-Phase and Multi-Phase Resource managers with a durable enlistment must be able to perform recovery if they experience a failure. Implementing a Resource…
Question
You use Microsoft Visual Studio 2010 and Microsoft .NET Framework 4.0 to create an application. The application connects to several SQL Server databases. You create a function that modifies customer records that are stored in multiple databases. All updates for a given record are performed in a single transaction. You need to ensure that all transactions can be recovered. What should you do?
Options
- ACall the RecoveryComplete method of the TransactionManager class.
- BCall the EnlistDurable method of the Transaction class.
- CCall the Reenlist method of the TransactionManager class.
- DCall the EnlistVolatile method of the Transaction class.
How the community answered
(43 responses)- A12% (5)
- B79% (34)
- C2% (1)
- D7% (3)
Explanation
Enlisting Resources as Participants in a Transaction Implementing a Resource Manager Committing a Transaction in Single-Phase and Multi-Phase Resource managers with a durable enlistment must be able to perform recovery if they experience a failure. Implementing a Resource Manager TransactionManager.Reenlist() Reenlists a durable participant in a transaction. A resource manager facilitates resolution of durable enlistments in a transaction by reenlisting the transaction participant after resource failure. Transaction.EnlistVolatile() Enlists a volatile resource manager to participate in a transaction. Volatile resource managers cannot recovery from failure to complete a transaction in which they were participating. For more information on volatile and durable resources, as well as how to enlist a resource, see Implementing A Resource Manager. Transaction.EnlistDurable() Enlists a durable resource manager to participate in a transaction. TransactionManager.RecoveryComplete() Notifies the transaction manager that a resource manager recovering from failure has finished reenlisting in all unresolved transactions. All durable resource managers should do recovery when they first start up by calling the Reenlist method for each outstanding transaction. Only when all of the reenlistments are done should the resource manager call RecoveryComplete. TransactionManager.Reenlist() Method Transaction.EnlistVolatile() Method Transaction.EnlistDurable() TransactionManager.RecoveryComplete() Method us/library/system.transactions.transactionmanager.recoverycomplete.aspx)
Topics
Community Discussion
No community discussion yet for this question.