[whatwg] localStorage mutex - a solution?

Rob Ennals rob.ennals at gmail.com
Wed Nov 4 15:15:07 PST 2009


I suspect my suggested spec line was insufficiently precise. How about  
this:

"the user agent MUST NOT release the storage mutex between calls to  
local storage, except that the user agent MAY release the storage  
mutex on any API operation"

We'd still need to define what "API operation" means, and I'm sure  
this could be worded better, but hopefully this makes the basic idea  
clearer.

-Rob

On Nov 4, 2009, at 2:56 PM, Mike Shaver <mike.shaver at gmail.com> wrote:

> On Wed, Nov 4, 2009 at 5:51 PM, Rob Ennals <rob.ennals at gmail.com>  
> wrote:
>> Or to put it another way: if the thread can't call an API then it  
>> can't
>> block waiting for another storage mutex, thus deadlock can't occur,  
>> thus we
>> don't need to release the storage mutex.
>
> Right, but the spec text there doesn't prevent the UA from releasing
> more than in that scenario, which seems like it's not an improvement
> over where we are right now: unpredictable consistency.  Existing racy
> implementations like in IE would be conformant, so developers can't
> count on the script-sequenced-storage-ops pattern providing
> transactionality.
>
> More likely, though, _I_'m missing something...
>
> Mike




More information about the whatwg mailing list