Method and system for discarding locally committed...

Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C714S004110, C714S038110, C714S051000, C707S793000, C709S219000

Reexamination Certificate

active

06449734

ABSTRACT:

FIELD OF THE INVENTION
The invention relates generally to computer network servers, and more particularly to computer servers arranged in a server cluster.
BACKGROUND OF THE INVENTION
A server cluster is a group of at least two independent servers connected by a network and managed as a single system. The clustering of servers provides a number of benefits over independent servers. One important benefit is that cluster software, which is run on each of the servers in a cluster, automatically detects application failures or the failure of another server in the cluster. Upon detection of such failures, failed applications and the like can be quickly restarted on a surviving server, with no substantial reduction in service. Indeed, clients of a Windows NT cluster believe they are connecting with a physical system, but are actually connecting to a service which may be provided by one of several systems. To this end, clients create a TCP/IP session with a service in the cluster using a known IP address. This address appears to the cluster software as a resource in the same group (i.e., a collection of resources managed as a single unit) as the application providing the service. In the event of a failure the cluster service “moves” the entire group to another system.
Other benefits include the ability for administrators to inspect the status of cluster resources, and accordingly balance workloads among different servers in the cluster to improve performance. Dynamic load balancing is also available. Such manageability also provides administrators with the ability to update one server in a cluster without taking important data and applications offline. As can be appreciated, server clusters are used in critical database management, file and intranet data sharing, messaging, general business applications and the like.
While clustering is thus desirable in many situations, problems arise if the servers (nodes) of the cluster become inconsistent with one another with respect to certain persistent cluster information. For example, memory state information, properties of the cluster or its resources and/or the state and existence of components in the cluster need to be consistent among the cluster's nodes. A global update protocol is used to ensure consistency of updates to this persistent state. Moreover, if a cluster shuts down and a new cluster is later formed with no members common to the previous cluster, a situation known as a temporal partition, a potential problem exists because no new member necessarily possesses the current state information of the previous cluster.
To maintain consistency across a temporal partition, a log file is maintained. Each time a modification to the cluster state information takes place, the change is recorded in the log file. Then, when a new node forms a cluster, it unrolls any changes recorded in the log file to make its local database consistent with the last state of the previous cluster before it went down.
However, different nodes can fail at different times. In one particular event, a node may fail just after it has committed a change locally and caused the change to be logged in the log file, but before any other node can find out about the change. As soon as another state change occurs and is logged by a surviving node, the previous entry in the log file is not consistent with the state of the surviving cluster. If a new cluster is later formed following a temporal partition, the node forming the cluster will unroll this inconsistent information from the log file, whereby the new cluster will be inconsistent with the previous (earlier-in-time) cluster.
SUMMARY OF THE INVENTION
The present invention provides a method and system for discarding change information in a server cluster that is locally committed and logged, but not replicated to other nodes. Such change information is preferably maintained and replicated as a transaction. If a transaction is not fully replicated due to a server failure or the like, and a subsequent transaction is logged, the previous transaction (referred to herein as an orphaned replicated transaction) is inconsistent with the actual state of a surviving cluster. When unrolling a log file to make a new cluster consistent with a previous cluster across a partition in time, such orphaned (logged, but not fully replicated) transactions are discarded by the present invention, whereby the new cluster becomes consistent with the actual state of the previous cluster.
Briefly, the present invention provides a method and system for recording the state data of a previous cluster and forming a new cluster of servers using that state data such that the new cluster is consistent with the state of the previous cluster. Each transaction is recorded in a log file with an associated sequence number. A local copy of the sequence number is monotonically adjusted (e.g., incremented) by each node each time that a transaction is replicated thereto. If a transaction is logged but not replicated, the next logged transaction will have the same sequence number, since no other node received the transaction and thus did not increment its sequence number. A node forming a new cluster, such as after a temporal partition, retrieves each transaction from the log file along with its associated sequence number. While unrolling the log file, the first of any logged transactions having duplicate sequence numbers are known to have been orphaned replicated transactions. Such orphaned replicated transactions are discarded rather than used to update the state of the node forming the new cluster, whereby the new cluster becomes consistent with the actual state of the previous cluster.
Other benefits and advantages will become apparent from the following detailed description when taken in conjunction with the drawings, in which:


REFERENCES:
patent: 4736393 (1988-04-01), Grimes et al.
patent: 5021949 (1991-06-01), Morten et al.
patent: 5027269 (1991-06-01), Grant et al.
patent: 5117352 (1992-05-01), Falek
patent: 5128885 (1992-07-01), Janis et al.
patent: 5165018 (1992-11-01), Simor
patent: 5301337 (1994-04-01), Wells et al.
patent: 5341372 (1994-08-01), Kirkham
patent: 5398329 (1995-03-01), Hirata et al.
patent: 5416777 (1995-05-01), Kirkham
patent: 5423037 (1995-06-01), Hvasshovd
patent: 5434865 (1995-07-01), Kirkham
patent: 5435003 (1995-07-01), Chng et al.
patent: 5490270 (1996-02-01), Devarakonda et al.
patent: 5491800 (1996-02-01), Goldsmith et al.
patent: 5537532 (1996-07-01), Chng et al.
patent: 5568491 (1996-10-01), Beal et al.
patent: 5666486 (1997-09-01), Alfieri et al.
patent: 5666538 (1997-09-01), DeNicola
patent: 5710727 (1998-01-01), Mitchell et al.
patent: 5715389 (1998-02-01), Komori et al.
patent: 5737601 (1998-04-01), Jain et al.
patent: 5745669 (1998-04-01), Hugard et al.
patent: 5754752 (1998-05-01), Sheh et al.
patent: 5754877 (1998-05-01), Hagersten et al.
patent: 5757642 (1998-05-01), Jones
patent: 5768523 (1998-06-01), Schmidt
patent: 5768524 (1998-06-01), Schmidt
patent: 5781737 (1998-07-01), Schmidt
patent: 5787247 (1998-07-01), Norin et al.
patent: 5794253 (1998-08-01), Norin et al.
patent: 5805839 (1998-09-01), Singhal
patent: 5806075 (1998-09-01), Jain et al.
patent: 5812779 (1998-09-01), Ciscon et al.
patent: 5815649 (1998-09-01), Utter et al.
patent: 5819019 (1998-10-01), Nelson
patent: 5822532 (1998-10-01), Ikeda
patent: 5832514 (1998-11-01), Norin et al.
patent: 5852724 (1998-12-01), Glenn, II et al.
patent: 5857073 (1999-01-01), Tsukamoto et al.
patent: 5867714 (1999-02-01), Todd et al.
patent: 5919247 (1999-07-01), Van Hoff et al.
patent: 5933422 (1999-08-01), Kusano et al.
patent: 5935230 (1999-08-01), Pinai et al.
patent: 5940870 (1999-08-01), Chi et al.
patent: 5946689 (1999-08-01), Yanaka et al.
patent: 5963960 (1999-10-01), Swart et al.
patent: 5968121 (1999-10-01), Logan et al.
patent: 5968140 (1999-10-01), Hall
patent: 5982747 (1999-11-01), Ramfelt et al.
patent: 5991771 (1999-11-01), Falls et al.
patent: 5991893 (1999-11-01), Snider
patent: 6003075 (1999-12-01), Arendt et al.
patent: 6044367 (2000-03-01), W

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for discarding locally committed... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for discarding locally committed..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for discarding locally committed... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2827502

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.