Claims Analysis
Total Claims: 80
Claim 1
Independent Claim
88 words
In a client-server computer system having a client and a server, a computer-implemented method comprising the following steps: client sending a request from the client to the server; server processing the request to prepare a reply to the request; forcibly logging in a stable log at the server a log record containing the reply; sending the reply from the server to the client after the log record is logged in the stable log; and wherein the log record is the only forced logging event for the request/reply exchange.
Claim 2
Dependent Claim
88 words
In a client-server computer system having a client and a server, a computer-implemented method comprising the following steps: client sending a request from the client to the server; server processing the request to prepare a reply to the request; forcibly logging in a stable log at the server a log record containing the reply; sending the reply from the server to the client after the log record is logged in the stable log; and wherein the log record is the only forced logging event for the request/reply exchange.
Claim 3
Dependent Claim
34 words
A computer-implemented method as recited in claim 1 , wherein the server logging steps comprise capturing in the log information that enables undo recovery of incomplete requests in the event of a system crash.
Claim 4
Dependent Claim
46 words
A computer-implemented method as recited in claim 1 , wherein the server logging steps comprise capturing in the log information, including data read by the request, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 5
Dependent Claim
45 words
A computer-implemented method as recited in claim 1 , wherein the server logging steps comprise capturing in the log information, including references to data read, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 6
Dependent Claim
39 words
A computer-implemented method as recited in claim 1 , further comprising the step of maintaining at both the server and the client an active application table listing currently active applications for which the server or the client is responsible.
Claim 7
Dependent Claim
27 words
A computer-implemented method as recited in claim 5 , further comprising the step of recovering only the applications listed on the active application table following a crash.
Claim 8
Dependent Claim
39 words
A computer-implemented method as recited in claim 1 , further comprising the step of maintaining at both the server and the client a message lookup table that temporarily stores records of replies sent from the server to the client.
Claim 9
Dependent Claim
36 words
A computer-implemented method as recited in claim 7 , further comprising the step of using the reply record from the message lookup table should the client resubmit the associated request during recovery from a client crash.
Claim 10
Dependent Claim
59 words
A computer-implemented method as recited in claim 7 , further comprising the step of removing reply records from the message lookup table in response to either of the following events: (1) the client installs an application state of an application to which the reply pertains, or (2) the client logs the reply in a stable log at the client.
Claim 11
Dependent Claim
23 words
A computer-implemented method as recited in claim 1 , further comprising the step of tagging each reply with a message sequence number (MSN).
Claim 12
Dependent Claim
29 words
A computer-implemented method as recited in claim 10 , further comprising the step of tracking at the client a last used MSN for each application running on the client.
Claim 13
Dependent Claim
65 words
A computer-implemented method as recited in claim 10 , further comprising the step of tracking at the client, for each application running at the client, a “redo” MSN that is one of (1) an oldest MSN that follows a most recent installation point of the application, or (2) an MSN assigned to the installation point itself if no more recent message for the application exists.
Claim 14
Dependent Claim
49 words
A computer-implemented method as recited in claim 10 , further comprising the step of tracking at the client, for each application running at the client, a “stable” MSN that pertains to reply messages that are not stable at the client but may have stable log records at the server.
Claim 15
Dependent Claim
34 words
A computer-implemented method as recited in claim 1 , further comprising the step of subsequently logging in a stable log at the client a client log record containing a reply received from the server.
Claim 16
Dependent Claim
52 words
A computer-implemented method as recited in claim 14 , further comprising the step of discarding the client log record from the client's stable log in response to installing an application state of an application to which the reply pertains at a point in time after receipt of the reply from the server.
Claim 17
Dependent Claim
98 words
A computer-implemented method as recited in claim 1 , further comprising the following steps: generating a stability notification at the client in response to one of (1) installing an application state of an application responsible for the request in a stable log at the client some time after the reply is received from the server, or (2) slogging in the client's stable log the reply received from the server; sending the stability notification from the client to the server; and discarding the log record from the stable log at the server in response to receiving the stability notification.
Claim 18
Dependent Claim
91 words
A computer-implemented method as recited in claim 1 , further comprising the following steps: completing an application at the client; sending a notice of termination from the client to the server; logging at the server that the client application has terminated; discarding all log records for replies pertaining to the application from the stable log at the server in response to receiving the notice of termination; sending a confirmation of the termination notice from the server to the client; and terminating the application at the client following receipt of the confirmation.
Claim 19
Dependent Claim
33 words
A computer-implemented method as recited in claim 1 , further comprising the step of using the log records for replies at the server's stable log to recover the client following a client crash.
Claim 20
Dependent Claim
25 words
Computer-readable media distributed at the server and the client having computer-executable instructions to perform the steps in the method as recited in claim 1 .
Claim 21
Dependent Claim
77 words
In a server computer system for serving one or more clients, a computer-implemented method implemented at the server computer system comprising the following steps: receiving a request from a client; processing the request to prepare a reply to the request without logging the request in a stable log; forcibly logging in the stable log a log record containing the reply; and sending the reply to the client after the log record is logged in the stable log.
Claim 22
Dependent Claim
77 words
In a server computer system for serving one or more clients, a computer-implemented method implemented at the server computer system comprising the following steps: receiving a request from a client; processing the request to prepare a reply to the request without logging the request in a stable log; forcibly logging in the stable log a log record containing the reply; and sending the reply to the client after the log record is logged in the stable log.
Claim 23
Dependent Claim
34 words
A computer-implemented method as recited in claim 20 , wherein the server logging steps comprise capturing in the log information that enables undo recovery of incomplete requests in the event of a system crash.
Claim 24
Dependent Claim
46 words
A computer-implemented method as recited in claim 20 , wherein the server logging steps comprise capturing in the log information, including data read by the request, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 25
Dependent Claim
45 words
A computer-implemented method as recited in claim 20 , wherein the server logging steps comprise capturing in the log information, including references to data read, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 26
Dependent Claim
27 words
A computer-implemented method as recited in claim 20 , further Comprising the step of maintaining an active application table listing currently active applications running at the client.
Claim 27
Dependent Claim
27 words
A computer-implemented method as recited in claim 24 , further comprising the step of recovering only the applications listed on the active application table following a crash.
Claim 28
Dependent Claim
29 words
A computer-implemented method as recited in claim 20 , further comprising the step of maintaining a message lookup table that temporarily stores records of replies sent to the client.
Claim 29
Dependent Claim
37 words
A computer-implemented method as recited in claim 26 , further comprising the step of using reply records from the message lookup table during recovery of the client in place of the log record on the stable log.
Claim 30
Dependent Claim
60 words
A computer-implemented method as recited in claim 26 , further comprising the step of removing the reply record from the message lookup table in response to either of the following events: (1) the client installs an application state of an application to which the reply pertains, or (2) the client logs the reply in a stable log at the client.
Claim 31
Dependent Claim
79 words
A computer-implemented method as recited in claim 20 , further comprising the following steps: receiving a stability notification from the client indicating one of (1) that the client installed an application state of an application to which the reply pertains some time after the reply is sent to the client, or (2) that the client logged the reply in a client-side stable log; and discarding the log record from the stable log in response to receiving the stability notification.
Claim 32
Dependent Claim
57 words
A computer-implemented method as recited in claim 20 , further comprising the following steps: receiving a notice of termination from the client indicating that an application to which the reply pertains is terminating; and discarding from the stable log all log records for replies pertaining to the terminating application in response to receiving the notice of termination.
Claim 33
Dependent Claim
26 words
A computer-implemented method as recited in claim 20 , further comprising the step of using the log record to recover the client following a client crash.
Claim 34
Dependent Claim
16 words
A computer programmed to perform the steps in the method as recited in claim 20 .
Claim 35
Dependent Claim
28 words
A computer-readable media distributed at the server and the client, which directs server and client to perform the steps in the method as recited in claim 20 .
Claim 36
Dependent Claim
85 words
In a server computer system for serving a client, a computer-implemented method implemented at the server computer system comprising the following steps: storing an application identification of an active application executing on the client in an active application table; receiving from the client a request generated by the application and identified via an application identification; force logging, in a stable log, a log record containing a reply to the request; storing the reply in a message lookup table; and sending the reply to the client.
Claim 37
Dependent Claim
85 words
In a server computer system for serving a client, a computer-implemented method implemented at the server computer system comprising the following steps: storing an application identification of an active application executing on the client in an active application table; receiving from the client a request generated by the application and identified via an application identification; force logging, in a stable log, a log record containing a reply to the request; storing the reply in a message lookup table; and sending the reply to the client.
Claim 38
Dependent Claim
29 words
A computer-implemented method as recited in claim 34 , further comprising the step of recovering only the active applications listed on the active application table following a client crash.
Claim 39
Dependent Claim
37 words
A computer-implemented method as recited in claim 34 , further comprising the step of using the reply stored in the message lookup table in place of the log record to recover the client from a client crash.
Claim 40
Dependent Claim
51 words
A computer-implemented method as recited in claim 34 , further comprising the step of removing the reply from the message lookup table in response to either of the following events: (1) the client installs an application state of the application, or (2) the client logs the reply in its stable log.
Claim 41
Dependent Claim
29 words
A computer-implemented method as recited in claim 34 , further comprising the step of occasionally storing the active application table and the message lookup table on the stable log.
Claim 42
Dependent Claim
16 words
A computer programmed to perform the steps in the method as recited in claim 34 .
Claim 43
Dependent Claim
28 words
A computer-readable media distributed at the server and the client, which directs server and client to perform the steps in the method as recited in claim 34 .
Claim 44
Dependent Claim
122 words
In a client-server computer system having a client and a server, an application recovery system comprising: a client-side application that executes on the client to send a request to the server; a server-side application request program that executes on the server to process the request, prepare a reply to the request, and return the reply to the client; and a resource manager that executes on the server to create a stable log file that can be used to recover the client-side application in the event of a system crash, the resource manager being configured to forcibly log in the stable log file a log record containing the reply, wherein the log record is the only forced logging event for the request/reply exchange.
Claim 45
Dependent Claim
122 words
In a client-server computer system having a client and a server, an application recovery system comprising: a client-side application that executes on the client to send a request to the server; a server-side application request program that executes on the server to process the request, prepare a reply to the request, and return the reply to the client; and a resource manager that executes on the server to create a stable log file that can be used to recover the client-side application in the event of a system crash, the resource manager being configured to forcibly log in the stable log file a log record containing the reply, wherein the log record is the only forced logging event for the request/reply exchange.
Claim 46
Dependent Claim
33 words
An application recovery system as recited in claim 41 , wherein the resource manager captures in the log information that enables undo recovery of incomplete requests in the event of a system crash.
Claim 47
Dependent Claim
45 words
An application recovery system as recited in claim 41 , wherein the resource manager captures in the log information, including data read by the request, that enables undo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 48
Dependent Claim
44 words
An application recovery system as recited in claim 41 , wherein the resource manager captures in the log information, including references to data read, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 49
Dependent Claim
26 words
An application recovery system as recited in claim 41 , wherein the resource manager maintains an active application table listing currently active applications running on client.
Claim 50
Dependent Claim
28 words
An application recovery system as recited in claim 45 , wherein the resource manager recovers only the applications listed on the active application table following a system crash.
Claim 51
Dependent Claim
30 words
An application recovery system as recited in claim 41 , wherein the resource manager maintains a message lookup table that temporarily stores records of the replies sent to the client.
Claim 52
Dependent Claim
42 words
An application recovery system as recited in claim 47 , wherein the resource manager uses the reply record from the message lookup table in place of the log record in the stable log to recover the client-side application following a client crash.
Claim 53
Dependent Claim
61 words
An application recovery system as recited in claim 47 , wherein the resource manager removes the reply record from the message lookup table in s response to either of the following events: (1) the client installs an application state of an application to which the reply pertains, or (2) the client logs the reply in a stable log at the client.
Claim 54
Dependent Claim
34 words
An application recovery system as recited in claim 41 , further comprising a client-side resource manager that executes at the client, the client-side resource manager tracking the last received reply for the client-side application.
Claim 55
Dependent Claim
51 words
An application recovery system as recited in claim 41 , further comprising a client-side resource manager that executes at the client, the client-side resource manager tracking one of (1) an oldest reply that is received after a most recent installation point of the client-side application, or (2) the installation point itself.
Claim 56
Dependent Claim
44 words
An application recovery system as recited in claim 41 , further comprising a client-side resource manager that executes at the client, the client-side resource manager tracking reply messages that are not stable at the client but may have stable log records at the server.
Claim 57
Dependent Claim
48 words
An application recovery system as recited in claim 41 , further comprising a client-side resource manager that executes at the client, the client-side resource manager occasionally logging in non-forced manner, in a stable log at the client, a client log record containing the reply received from the server.
Claim 58
Dependent Claim
124 words
An application recovery system as recited in claim 41 , further comprising: a client-side resource manager that executes at the client, the client-side resource manager occasionally (1) installing an application state of client-side application in a stable log at the client, or (2) logging in the client's stable log the reply received from the server; the client-side resource manager sending a stability notification to the server indicating that the reply is now stably recorded at the client or that the reply is no longer needed at the server because a later application state has been installed; and the resource manager at the server being configured to discard the log record from the stable log at the server in response to receiving the stability notification.
Claim 59
Dependent Claim
64 words
An application recovery system as recited in claim 41 , wherein: the client-side application completes and sends a notice of termination to the server; the resource manager forces a log record describing the application termination; the resource manager is configured to discard all log records for replies pertaining to the client-side application from the stable log in response to receiving the notice of termination.
Claim 60
Dependent Claim
27 words
An application recovery system as recited in claim 41 , wherein the resource manager uses the log records to recover the client-side application following a client crash.
Claim 61
Dependent Claim
121 words
A server computer system for serving one or more clients, comprising: a volatile main memory having a log buffer; a non-volatile memory that persists across a system crash, the non-volatile memory having a stable log; a processing unit coupled to the main memory and the non-volatile memory; an application stored in the volatile main memory and executable on the processing unit to receive and process requests from a client and to send a reply back to the client; and a resource manager stored in the volatile main memory and executable on the processing unit to record the reply in the log buffer and to commit the reply record to the stable log when the reply is sent back to the client.
Claim 62
Dependent Claim
121 words
A server computer system for serving one or more clients, comprising: a volatile main memory having a log buffer; a non-volatile memory that persists across a system crash, the non-volatile memory having a stable log; a processing unit coupled to the main memory and the non-volatile memory; an application stored in the volatile main memory and executable on the processing unit to receive and process requests from a client and to send a reply back to the client; and a resource manager stored in the volatile main memory and executable on the processing unit to record the reply in the log buffer and to commit the reply record to the stable log when the reply is sent back to the client.
Claim 63
Dependent Claim
35 words
A server computer system as recited in claim 57 , wherein the resource manager captures in the logged reply record information that enables undo recovery of incomplete requests in the event of a system crash.
Claim 64
Dependent Claim
47 words
A server computer system as recited in claim 57 , wherein the resource manager captures in the logged reply record information, including data read by the request, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 65
Dependent Claim
46 words
A server computer system as recited in claim 57 , wherein the resource manager captures in the logged reply record information, including references to data read, that enables redo recovery of incomplete requests so that their execution can continue, in the event of a system crash.
Claim 66
Dependent Claim
27 words
A server computer system as recited in claim 57 , wherein the resource manager maintains an active application table listing currently active applications running on the client.
Claim 67
Dependent Claim
27 words
A server computer system as recited in claim 61 , wherein the resource manager recovers only the applications listed on the active application table following a crash.
Claim 68
Dependent Claim
24 words
A server computer system as recited in claim 57 , wherein the resource manager maintains a message lookup table that temporarily stores reply records.
Claim 69
Dependent Claim
38 words
A server computer system as recited in claim 63 , wherein the resource manager uses the reply record from the message lookup table during recovery of the client in place of the log record on the stable log.
Claim 70
Dependent Claim
63 words
A server computer system as recited in claim 57 , wherein the resource manager discards the reply record from the stable log in response to receiving a notification from the client indicating (1) the client has installed an application state of an application to which the reply pertains, or (2) the client has logged the reply in a stable log at the client.
Claim 71
Dependent Claim
42 words
A server computer system as recited in claim 57 , wherein the resource manager discards the reply record from the stable log in response to receiving a notification from the client indicating that an application to which the reply pertains is terminating.
Claim 72
Dependent Claim
30 words
A server computer system as recited in claim 57 , wherein the resource manager uses the reply record from the stable log to recover the client following a client crash.
Claim 73
Dependent Claim
112 words
For use on a server computer system having a non-volatile memory with a stable log, a stable database, a volatile main memory with a log buffer, and a processing unit, in which the server computer system receives requests from one or more clients and returns replies to the clients, a resource manager executable on the server processing unit to record a client reply in the log buffer and to manage when to flush the reply record from the log buffer to the stable log, the resource manager being configured to commit the reply record to the stable log at or just before a time when the reply is sent to the client.
Claim 74
Dependent Claim
112 words
For use on a server computer system having a non-volatile memory with a stable log, a stable database, a volatile main memory with a log buffer, and a processing unit, in which the server computer system receives requests from one or more clients and returns replies to the clients, a resource manager executable on the server processing unit to record a client reply in the log buffer and to manage when to flush the reply record from the log buffer to the stable log, the resource manager being configured to commit the reply record to the stable log at or just before a time when the reply is sent to the client.
Claim 75
Dependent Claim
25 words
A resource manager as recited in claim 68 , further configured to maintain an active application table listing currently active applications running on the client.
Claim 76
Dependent Claim
25 words
A resource manager as recited in claim 69 , further configured to recover only the applications listed on the active application table following a crash.
Claim 77
Dependent Claim
31 words
A resource manager as recited in claim 68 , further configured to maintain a message lookup table that temporarily stores a copy of the reply record committed to the stable log.
Claim 78
Dependent Claim
36 words
A resource manager as recited in claim 71 , further configured to use the reply record from the message lookup table during recovery of the client in place of the log record on the stable log.
Claim 79
Dependent Claim
61 words
A resource manager as recited in claim 71 , further configured to remove the reply record from the message lookup table in response to client notifications of either of the following events: (1) the client installs an application state of an application to which the reply pertains, or (2) the client logs the reply in a stable log at the client.
Claim 80
Dependent Claim
13 words
A computer-readable medium storing a resource manager as recited in claim 68 .