Methods and apparatus for remotely updating executing processes
First Claim
1. A system, comprising:
- one or more processors; and
program instructions that are executable by the one or more processors to implement a storage gateway process on a computing device, the storage gateway process configured to;
perform storage gateway operations that include;
receive I/O requests including write requests from one or more client processes on a local network via one or more I/O ports,append write data indicated by the write requests to an in-memory portion of a write log on a local data store, andupload write data from the write log to a remote data store;
receive an indication that the storage gateway process is to shut down so that an updated storage gateway process can take over the storage gateway operations; and
in response to receipt of said indication;
persist a storage gateway configuration that includes an indication of the one or more I/O ports,flush write data from the in-memory portion of the write log to the local data store, andrelease the one or more I/O ports so that the updated storage gateway process can take over the storage gateway operations.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, apparatus, and computer-accessible storage media for remotely updating an executing process that receives I/O requests on I/O port(s), stores write data to a write log on local storage, and uploads data from the write log to remote storage. An update for the process is detected and downloaded, and an updated process is instantiated from the update. The current process is directed to perform a shutdown for update during an update window. In response, the current process saves its current configuration, flushes an in-memory portion of the write log to local storage, and releases its I/O port(s). The updated process loads the saved configuration, detects that the port(s) have been released, and starts accepting I/O requests on the ports. During flushing, the current process flushes current data in memory while continuing to append new write data, stops accepting new write requests, and then flushes the new write data.
-
Citations
20 Claims
-
1. A system, comprising:
-
one or more processors; and program instructions that are executable by the one or more processors to implement a storage gateway process on a computing device, the storage gateway process configured to; perform storage gateway operations that include; receive I/O requests including write requests from one or more client processes on a local network via one or more I/O ports, append write data indicated by the write requests to an in-memory portion of a write log on a local data store, and upload write data from the write log to a remote data store; receive an indication that the storage gateway process is to shut down so that an updated storage gateway process can take over the storage gateway operations; and in response to receipt of said indication; persist a storage gateway configuration that includes an indication of the one or more I/O ports, flush write data from the in-memory portion of the write log to the local data store, and release the one or more I/O ports so that the updated storage gateway process can take over the storage gateway operations. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-implemented method, comprising:
-
performing storage gateway operations that include; receiving I/O requests including write requests from one or more client processes on a local network via one or more I/O ports, appending write data indicated by the write requests to an in-memory portion of a write log on a local data store, and uploading write data from the write log to a remote data store; receiving an indication that a storage gateway process is to shut down so that an updated storage gateway process can take over the storage gateway operations; and in response to receipt of said indication; persisting a storage gateway configuration that includes an indication of the one or more I/O ports, flushing write data from the in-memory portion of the write log to the local data store, and releasing the one or more I/O ports so that the updated storage gateway process can take over the storage gateway operations. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-accessible storage medium storing program instructions that when executed by one or more processors implement:
a storage gateway process configured to; perform storage gateway operations that include; receiving I/O requests including write requests from one or more client processes on a local network via one or more I/O ports, appending write data indicated by the write requests to an in-memory portion of a write log on a local data store, and uploading write data from the write log to a remote data store; receive an indication that the storage gateway process is to shut down so that an updated storage gateway process can take over the storage gateway operations; and in response to receiving said indication; persist a storage gateway configuration that includes an indication of the one or more I/O ports, flush write data from the in-memory portion of the write log to the local data store, and release the one or more I/O ports so that the updated storage gateway process can take over the storage gateway operations. - View Dependent Claims (16, 17, 18, 19, 20)
Specification