- From: Nikunj R. Mehta <nikunj.mehta@oracle.com>
- Date: Fri, 24 Jul 2009 16:30:21 -0700
- To: Aaron Boodman <aa@google.com>
- Cc: Ian Hickson <ian@hixie.ch>, public-webapps WG <public-webapps@w3.org>, Laxmi Narsimha Rao Oruganti <Laxmi.Oruganti@microsoft.com>
On Jul 24, 2009, at 3:57 PM, Aaron Boodman wrote: >>> I do not agree that database-level locking is a big problem for web >>> applications. >> >> Our problem is not with databases doing database-level locking. Our >> problem >> is that such behavior is a MUST. > > I think it is very desirable for it to appear to the developer that > writes to the local datastore are atomic. Lots of complexity falls out > if this is not true. It is implicit that transactions give atomicity (that's what A in ACID stands for). It would be mischaracterizing this discussion to say that we are arguing about atomicity. We are, however, talking about isolation (the I in ACID), or more precisely the degree of isolation. > In some models (non-SQL) it may be easier to > arrange a large update in the application layer and commit it all at > once. In SQL, this is less true so it is important to provide API that > makes conflicts impossible while a multi-step update is in progress. This problem exists in the WebStorage model [1]. More specifically, there is no way to perform multiple updates atomically in it. The proposal that I have sketched about B-trees [2] does not have this problem since it is possible to work with transactions to get the atomicity as well as a desired isolation level. I take it that there are no issues with that proposal since I have not heard anyone say so. > > Perhaps your real issue is that the current API does not work well for > non SQL data stores. Not at all! It would be disingenuous to find an ulterior motive in my arguments. Nikunj http://o-micron.blogspot.com [1] http://dev.w3.org/html5/webstorage/ [2] http://www.w3.org/mid/F480F60A-5DAE-4B73-922A-93ED401CF32C@oracle.com
Received on Friday, 24 July 2009 23:32:52 UTC