8 Migration and Recovery for Clustered MDBs
In turn, any MDB deployment associated with a migrated JMS destination is automatically updated. Such an update may include closing and reinitializing MDB pools and/or reconnecting to the JMS destination
Caution:
Service migration is not recommended for the following cases. In these cases, migration can result in either missing messages or duplicate message processing.
Case 1, when all of the following are true:
-
The MDB
topicMessagesDistributionMode
isOne-Copy-Per-Server
-
The MDB
distributedDestinationConnection
isLocalOnly
-
The MDB is
Durable
-
The destination is configured as the logical name of a replicated distributed topic
Case 2, when all of the following are true:
-
The MDB
topicMessagesDistributionMode
isCompatibility
-
The MDB is
Durable
-
The destination is configured as the logical name of a distributed topic
Case 3, when all of the following are true:
-
The MDB
topicMessagesDistributionMode
isOne-Copy-Per-Application
-
The MDB
distributedDestinationConnection
isLocalOnly
-
The migration target server has no MDB instance. Best practice is to target MDB deployments to the entire cluster, to avoid this problem.
For more information on topic message processing, see Configuring and Deploying MDBs Using JMS Topics.
Note:
A migratable service works with clustered servers only. A WebLogic JMS destination can migrate to another server within a cluster, but cannot migrate to a different cluster.
After a WebLogic JMS destination migrates to another server, an MDB deployment, or "connection poller," reconnects to the migrated JMS destination and begins to receive messages from the JMS destination again; the MDB may also create and close pools as needed.
MDBs can be targeted to clusters or individual Oracle WebLogic Server instances, but not to migratable targets. If an MDB is running in the same cluster as a migratable destination, you must ensure that MDB is deployed everywhere that its source destination may be hosted. You can do this in two ways:
-
Deploy MDBs homogeneously to the cluster. (Recommended)
-
Ensure that the MDB's target set includes all Oracle WebLogic Server instances that are in the candidate lists for the migratable targets in the
config.xml
file used by the JMS servers that host the destination. For more information on configuring migratable targets, see Understanding Migratable Target Servers in a Cluster in Administering Clusters for Oracle WebLogic Server.
For instructions on implementing the migratable service and for background information on WebLogic JMS migration and recovery services for clustered architectures, see JMS as a Migratable Service within a Cluster in Administering JMS Resources for Oracle WebLogic Server.