Techniques for error handling in parallel splitting of storage commands
First Claim
1. A method comprising:
- performing at a first node of a storage cluster system a command received from a client device via a network to alter client device data stored in a first storage device coupled to the first node;
transmitting a replica of the command to a second node of the storage cluster system via the network to enable performance of the replica by the second node at least partially in parallel with the command;
retrying transmission of the replica based on a failure indication by the second node; and
selecting a status indication of performance of the command to transmit to the client device based on the failure indication and results of retrial of transmission of the replica, wherein an indication of successful performance of the command is selected as the status indication based upon a determination that a failure is a short-term failure and successful commencement of performance of the replica by the second node following retrial of transmission of the replica to the second node.
0 Assignments
0 Petitions
Accused Products
Abstract
Various embodiments are generally directed to techniques for handling errors affecting the at least partially parallel performance of data access commands between nodes of a storage cluster system. An apparatus may include a processor component of a first node, an access component to perform a command received from a client device via a network to alter client device data stored in a first storage device coupled to the first node, a replication component to transmit a replica of the command to a second node via the network to enable performance of the replica by the second node at least partially in parallel, an error component to retry transmission of the replica based on a failure indicated by the second node and a status component to select a status indication to transmit to the client device based on the indication of failure and results of retrial of transmission of the replica.
8 Citations
29 Claims
-
1. A method comprising:
-
performing at a first node of a storage cluster system a command received from a client device via a network to alter client device data stored in a first storage device coupled to the first node; transmitting a replica of the command to a second node of the storage cluster system via the network to enable performance of the replica by the second node at least partially in parallel with the command; retrying transmission of the replica based on a failure indication by the second node; and selecting a status indication of performance of the command to transmit to the client device based on the failure indication and results of retrial of transmission of the replica, wherein an indication of successful performance of the command is selected as the status indication based upon a determination that a failure is a short-term failure and successful commencement of performance of the replica by the second node following retrial of transmission of the replica to the second node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory machine-readable storage medium having stored thereon instructions for performing a method comprising computing code which when executed by at least one machine, causes the machine to:
-
perform at a first node of a storage cluster system a command received from a client device via a network to alter client device data stored in a first storage device coupled to the first node; transmit a replica of the command to a second node of the storage cluster system via the network to enable performance of the replica by the second node at least partially in parallel with the command; retry transmission of the replica based on a failure indication by the second node; and select a status indication of performance of the command to transmit to the client device based on the failure indication and results of retrial of transmission of the replica, wherein an indication of successful performance of the command is selected as the status indication based upon a determination that a failure is a short-term failure and successful acceptance to retry performance of the replica by the second node following retrial of transmission of the replica to the second node. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computing device comprising:
-
a memory containing machine-readable storage medium comprising computing code having stored thereon instructions for performing a method; and a processor component coupled to the memory, the processor component configured to execute the computing code to cause the processor component to; perform a command, received by a first node of a storage cluster system from a client device via a network, to alter client device data stored in a first storage device coupled to the first node; transmit a replica of the command to a second node of the storage cluster system via the network to enable performance of the replica by the second node at least partially in parallel with the command; retry transmission of the replica based on a failure indication by the second node; and select a status indication of performance of the command to transmit to the client device based on the failure indication and results of retrial of transmission of the replica, wherein an indication of successful performance of the command is selected as the status indication based upon a determination that a failure is a short-term failure and successful acceptance to retry performance of the replica by the second node following retrial of transmission of the replica to the second node. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
-
Specification