Efficient use of NVRAM during takeover in a node cluster
First Claim
Patent Images
1. An apparatus to provide additional memory to a first server while the first server takes over providing services normally provided by a second server, comprising:
- prior to a failure by the second server, the first server having a first memory, the first memory split into two segments with a first segment storing transactions from the first server and a second segment storing transactions from the second server, wherein the first memory is internal memory of the first server;
prior to the failure by the second server, the second server having a second memory, the second memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server, wherein the second memory is internal memory of the second server; and
after the failure by the second server, the first server assumes the identity of the second server to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries.
2 Assignments
0 Petitions
Accused Products
Abstract
A server storage system operating in a cluster mode, and a method for operating the server system that provides additional memory for use by a non-failed server to store log records while taking over the operations of a failed server.
111 Citations
23 Claims
-
1. An apparatus to provide additional memory to a first server while the first server takes over providing services normally provided by a second server, comprising:
-
prior to a failure by the second server, the first server having a first memory, the first memory split into two segments with a first segment storing transactions from the first server and a second segment storing transactions from the second server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, the second server having a second memory, the second memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server, wherein the second memory is internal memory of the second server; and after the failure by the second server, the first server assumes the identity of the second server to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for providing additional memory to a first server while the first storage server takes over providing services normally provided by a second server, comprising:
-
partitioning a first internal memory into a first segment and a second segment; partitioning a second internal memory into a third segment and a fourth segment; prior to a failure by the second server, writing transactions by the first server to the first segment of the first memory stored on the first server; prior to the failure by the second server, writing transactions by the second server to the second segment of the first memory stored on the first server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, writing transactions by the second server to the third segment of a second memory stored on the second server; prior to the failure by the second server, writing transactions by the first server to the fourth segment of the second memory stored on the second server, wherein the second memory is internal memory of the second server; after the failure by the second server, assuming the identity of the second server by the first server, upon the second server going offline to allow the first server to receive requests directed to the first server and requests directed to the second server; and after the failure by the second server, writing transactions in both the first segment and the second segment of the first memory by the first server prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries, wherein the first server receives requests directed to the first server and requests directed to the second server. - View Dependent Claims (7, 8, 9, 10)
-
-
11. An apparatus for providing additional memory to a first server while the first storage system takes over providing services normally provided by a second server, comprising:
-
prior to a failure by the second server, means for writing transactions by the first server to a first segment of a first memory stored on the first server; prior to the failure by the second server, means for writing transactions by the second server to a second segment of the first memory stored on the first server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, means for writing transactions by the second server to a third segment of a second memory stored on the second server; prior to the failure by the second server, means for writing transactions by the first server to a fourth segment of the second memory stored on the second server, wherein the second memory is internal memory of the second server; after the failure by the second server, means for assuming the identity of the second server by the first server, upon the second server going offline to allow the first server to receive requests directed to the first server and requests directed to the second server; and after the failure by the second server, means for writing transactions in both the first segment and the second segment of the first memory by the first server prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries, wherein the first server receives requests directed to the first server and requests directed to the second server. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A system to provide additional internal memory to a first server while the first storage system takes over providing services normally provided by a second server, comprising:
-
prior to a failure by the second server, the first server with a first internal memory, the first internal memory split into two segments with a first segment to store transactions from the first server and a second segment to store transactions from the second server; prior to the failure by the second server, the second server having a second internal memory, the second internal memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server; and after the failure by the second server, the first server assumes the identity of second server to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A method to provide additional memory to a first storage system while the first storage system takes over providing services normally provided by a second storage system, comprising:
-
prior to a failure by the second storage system, writing transactions by the first storage system to a first memory, the first memory split into two segments with a first segment to store transactions from the first storage system and a second segment to store transactions from the second storage system, wherein the first memory is internal memory of the first storage system; prior to the failure by the second server, the second server having a second memory, the second memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server, wherein the second memory is internal memory of the second server; and after the failure by the second storage system, assuming the identity of the second storage system by the first storage system to allow the first server to receive requests directed to the first server and requests directed to the second server, and writing, by the first storage system, transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. - View Dependent Claims (22)
-
-
23. A system, comprising:
-
a first memory divided into two segments, a first segment and a second segment, wherein the first memory is internal memory in a first server; a second memory divided into two segments, a third segment and a fourth segment, wherein the second memory is internal memory in a second server; prior to a failure of the second server, the first server writes transaction entries in the first segment that were from requests directed to the first server and writes transaction entries in the second segment that were from requests directed to the second server; prior to a failure of the second server, the second server writes transaction entries in the third segment that were from requests directed to the second server and writes transaction entries in the fourth segment that were from requests directed to the first server; and in response to the failure of the second server, assuming the identity of the second storage system by the first storage system to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first segment and the second segment of the first memory to allow a larger cache space for the first server while the first server receives requests directed to the first server and requests directed to the second server to effectively double the size of the first memory allocated for temporary storage of transaction entries.
-
Specification