US 11,669,516 B2
Fault tolerance for transaction mirroring
Suraj Brahma Raju, Issaquah, WA (US); Max Laier, Seattle, WA (US); and Ronald Steinke, Tacoma, WA (US)
Assigned to EMC IP HOLDING COMPANY LLC, Hopkinton, MA (US)
Filed by EMC IP Holding Company LLC, Hopkinton, MA (US)
Filed on Oct. 29, 2020, as Appl. No. 17/83,991.
Prior Publication US 2022/0138177 A1, May 5, 2022
Int. Cl. G06F 16/00 (2019.01); G06F 16/23 (2019.01); G06F 11/14 (2006.01)
CPC G06F 16/2379 (2019.01) [G06F 11/1474 (2013.01); G06F 2201/82 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A data storage system, comprising:
a memory that stores executable components; and
a processor that executes the executable components stored in the memory, wherein the executable components comprise:
a transaction management component that receives, from an initiator node of the data storage system at a primary participant node of the data storage system, a transaction commit command corresponding to a data transaction associated with a first fault domain, the transaction commit command being directed by the initiator node to the primary participant node and a secondary participant node of the data storage system;
a state monitoring component that determines whether a responsive message to the transaction commit command from the secondary participant node has been received at the primary participant node in response to receiving the transaction commit command, wherein the secondary participant node transmits the responsive message only to the primary participant node; and
a state update component that, in response to the state monitoring component determining that the responsive message was not received by the primary participant node from the secondary participant node within a threshold amount of time, indicates the secondary participant node as invalid in a data structure stored on a second fault domain that is distinct from the first fault domain.