Patent ID: 7836033
Filing Date: 2010-11-16
Classification: G06F,Y10S

Abstract:
1. A computer-implemented method of updating a global state by a multi-processor storage server, the method comprising: generating a message to update the global state, wherein the global state is a state that is shared by a plurality of processes or threads running in the multi-processor storage server and wherein the global state corresponds to storage space managed by the storage server; creating, by the multi-processor storage server, a copy of the global state in a private temporary buffer; updating the global state after creating the copy of the global state, wherein the updating of the global state includes the message making front end updates to the global state, wherein the front end updates correspond to data changes in memory due to handling of client operations, and wherein the updating the global state is performed inside protection of a domain lock; updating the copy of the global state in parallel with the updating of the global state, wherein the updating of the copy of the global state includes the message making updates that correspond to pushing the data changes in the memory to a mass storage device, and wherein the updating the copy of the global state is performed in the private temporary buffer and without protection of a lock; and merging changes from the private temporary buffer into the global state, wherein the merging is performed inside the protection of the domain lock and after completing the updating of the global state and the copy of the global state.