Mechanism for ensuring processing of messages received while in recovery mode
First Claim
1. In a computing system that includes one or more processors, persistent media configured to store information that persists through power loss of the computing system, and system memory that is directly accessed by the one or more processors, the computing system having applications running multiple instances of the application, the instances of the application having both a normal mode and a recovery mode, a method for permitting an instance of an application to operate in recovery mode while ensuring reliable message processing for messages received during the recovery mode operations of the instance governing a transaction, wherein a transaction is an exchange of messages following a particular message exchange pattern with a particular client system, the method comprising the following:
- a step for the computing system engaging in multiple concurrent transactions with at least one client computing system, wherein each of the multiple transactions has an associated instance of an application, each instance having an associated mode distinct from the mode of the other instances;
an act of receiving a message corresponding to a particular message transaction from among the multiple transactions, wherein the message is a normal message suitable for normal mode operations with respect to the particular message transaction and an instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode;
upon receiving the message, an act of determining from state information corresponding to the particular message transaction that the instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode;
an act of determining that the received message is a normal message suitable for normal mode operations with respect to the particular message transaction, wherein the received message cannot be processed by the instance governing the particular message transaction until the instance governing the particular message transaction is in the normal mode;
an act of placing the received message into a persistent queue associated with the instance governing the particular transaction for later processing when the instance governing the particular transaction is in the normal mode rather than the recovery mode, wherein messages related to other transactions continue to be processed if they are in the normal mode; and
an act of completing recovery mode operation for the instance governing the particular transaction.
4 Assignments
0 Petitions
Accused Products
Abstract
Mechanisms for operating in recovery mode while ensuring reliable message processing for messages received during the recovery operation mode. Upon receiving a message corresponding to a particular message transaction, the instance responsible for that message transaction determines from state information corresponding to the transaction, whether or not that instance is operating in normal mode, or recovery mode. If the state information reflects normal operation mode, then the instance processes the message. If recover mode, then the instance evaluates whether or not the message is a normal message suitable for normal operation mode, or a recovery message suitable for recovery operation mode. If the message is a normal message, then the message is placed in a persistent queue for later processing. If the message is a recovery message, the message is processed. Upon completion of recovery, the normal message in the queue may be processed.
12 Citations
23 Claims
-
1. In a computing system that includes one or more processors, persistent media configured to store information that persists through power loss of the computing system, and system memory that is directly accessed by the one or more processors, the computing system having applications running multiple instances of the application, the instances of the application having both a normal mode and a recovery mode, a method for permitting an instance of an application to operate in recovery mode while ensuring reliable message processing for messages received during the recovery mode operations of the instance governing a transaction, wherein a transaction is an exchange of messages following a particular message exchange pattern with a particular client system, the method comprising the following:
-
a step for the computing system engaging in multiple concurrent transactions with at least one client computing system, wherein each of the multiple transactions has an associated instance of an application, each instance having an associated mode distinct from the mode of the other instances; an act of receiving a message corresponding to a particular message transaction from among the multiple transactions, wherein the message is a normal message suitable for normal mode operations with respect to the particular message transaction and an instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode; upon receiving the message, an act of determining from state information corresponding to the particular message transaction that the instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode; an act of determining that the received message is a normal message suitable for normal mode operations with respect to the particular message transaction, wherein the received message cannot be processed by the instance governing the particular message transaction until the instance governing the particular message transaction is in the normal mode; an act of placing the received message into a persistent queue associated with the instance governing the particular transaction for later processing when the instance governing the particular transaction is in the normal mode rather than the recovery mode, wherein messages related to other transactions continue to be processed if they are in the normal mode; and an act of completing recovery mode operation for the instance governing the particular transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product for use in a computing system that includes one or more processors, persistent media configured to store information that persists through power loss of the computing system, and system memory that is directly accessed by the one or more processors, the computing system having applications running multiple instances of the application, the instances of the application having both a normal mode and a recovery mode, the computer program product for implementing a method for permitting an instance of an application to operate in recovery mode while ensuring reliable message processing for messages received during the recovery mode operations of the instance governing a transaction, wherein a transaction is an exchange of messages following a particular message exchange pattern with a particular client, the computer program product comprising one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by the one or more processors, cause the computing system to perform the following:
-
a step for the computing system engaging in multiple concurrent transactions with at least one client computing system, wherein each of the multiple transactions has an associated instance of an application, each instance having an associated mode distinct from the mode of the other instances; an act of receiving a message corresponding to a particular message transaction from among the multiple transactions, wherein the message is a normal message suitable for normal mode operations with respect to the particular message transaction and an instance of an application governing the particular message transaction is in a recovery mode rather than a normal mode; upon receiving the message, an act of determining from state information corresponding to the particular message transaction that the instance of an application governing the particular message transaction is in recovery mode rather than the normal mode; an act of determining that the received message is a normal message suitable for normal mode operations with respect to the particular message transaction, wherein the message cannot be processed by the instance governing the particular message transaction until the instance governing the particular message transaction is in the normal mode; an act of placing the received message into a persistent queue associated with the instance governing the particular transaction for later processing when the instance governing the particular transaction is in the normal mode rather than the recovery mode, wherein messages related to other transactions continue to be processed if they are in the normal mode; and an act of completing recovery mode operation for the instance governing the particular transaction. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. In a computing system that includes one or more processors, persistent media configured to store information that persists through power loss of the computing system, and system memory that is directly accessed by the one or more processors, the computing system having applications running multiple instances of the application, the instances of the application having both a normal mode and a recovery mode, a method for permitting an instance of an application to operate in recovery mode while ensuring reliable message processing for messages received during the recovery mode operations of the instance governing a transaction, wherein a transaction is an exchange of messages following a particular message exchange pattern with a particular client system, the method comprising the following:
-
a step for the computing system engaging in multiple concurrent transactions with at least one client computing system, wherein each of the multiple transactions has an associated instance of an application, each instance having an associated mode distinct from the mode of the other instances; an act of receiving a message corresponding to a particular message transaction from among the multiple transactions, wherein the message is a normal message suitable for normal mode operations with respect to the particular message transaction and an instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode; upon receiving the message, an act of determining from state information corresponding to the particular message transaction that the instance of an application governing the particular message transaction is in the recovery mode rather than the normal mode; while the instance governing the particular message transaction is in a recovery mode, an act of receiving a second message corresponding to a second message transaction, wherein the message is a normal message suitable for normal mode operations with respect to the second message transaction and a second instance governing the second message transaction is in a normal mode rather than a recovery mode; an act of the second instance governing the second message transaction processing the message; and a step for recovering while preserving received normal messages corresponding to the particular message transaction for use in normal mode. - View Dependent Claims (23)
-
Specification