Patent ID: 8660988
Filing Date: 2014-02-25
Classification: G06F

Abstract:
1. A computer-implemented method comprising: establishing a plurality of queues, wherein each queue is for a corresponding one of a plurality of blocks of a disk; while allowing non-blocking updates to the plurality of blocks by a plurality of concurrently running clients, attaining a consistency level relative to updates to the plurality of blocks by having each of the plurality of concurrently running clients initiate updates by storing, for each update to each given block of the plurality of blocks, a log record in the queue that corresponds to the given block, without updating the given block directly; wherein updates reflected in each given queue of the plurality of queues are applied to the corresponding block only after one of the plurality of concurrently running clients has obtaining a flushing lock on the given queue; wherein the plurality of concurrently running clients includes a first client and a second client; wherein the step of allowing non-blocking updates includes: the first client flushing the queue, wherein flushing the queue comprises: