The MESSAGE column will display the reasons for the optimizer??™s decision.
If you have used the build deferred option of the create materialized view or alter materialized
view command, the query rewrite feature will not be enabled until after the first time the materialized
view is refreshed.
NOTE
If bind variables have been used within the query, the optimizer will
not rewrite it even though query rewrite has been enabled.
Managing Distributed Transactions
A single logical unit of work may include transactions against multiple databases. For example, a
commit may be executed after two tables in separate databases have been updated. Oracle will
transparently maintain the integrity between the two databases by ensuring that all the transactions
involved either commit or roll back (using the rollback command or a session failure) as a group.
This is accomplished automatically via Oracle??™s Two-Phase Commit (2PC) mechanism.
?–
?–
?–
Chapter 17: Managing Distributed Databases 631
The first phase of the 2PC is the prepare phase. In this phase, each node involved in a
transaction prepares the data that it will need to either commit or roll back the data. Once
prepared, a node is said to be ???in doubt.??? The nodes notify the initiating node for the transaction
(known as the global coordinator) of their status.
Once all nodes are prepared, the transaction enters the commit phase, and all nodes are
instructed to commit their portion of the logical transaction.
Pages:
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929