RE: [WebStorage] Concerns on spec section 'Processing Model'

2009-07-23 Thread Laxmi Narsimha Rao Oruganti
+ Ian

Hey Ian,

Can you please express your opinion on this as an editor of Web 
Storage (now Web Database) Spec?

Thanks,
Laxmi

From: Nikunj R. Mehta [mailto:nikunj.me...@oracle.com]
Sent: Thursday, July 16, 2009 11:45 PM
To: public-webapps WG
Cc: Laxmi Narsimha Rao Oruganti
Subject: Re: [WebStorage] Concerns on spec section 'Processing Model'

The spec should not restrict implementations to any one level of concurrency 
unless there are specific undesirable effects.

Restricting the database to a single writer means that if there are separate 
workers or background threads working to update non-overlapping portions, then 
they have to wait for the lone current writer. Implementations can certainly 
compete to produce the level of concurrency that developers need. Specifically, 
I propose that the following text
[[
If the mode is read/write, the transaction must have an exclusive write lock 
over the entire database. If the mode is read-only, the transaction must have a 
shared read lock over the entire database. The user agent should wait for an 
appropriate lock to be available.
]]

be replaced with the following text

[[
Multiple read-only transactions may share the same data as long as there is no 
transaction attempting to write the  data being read. The user agent must wait 
for transactions that are reading some data before allowing a read/write 
transaction on the same data to continue.
]]

Nikunj
http://o-micron.blogspot.com



On Jul 16, 2009, at 6:46 AM, Laxmi Narsimha Rao Oruganti wrote:


[Adding the subject, sorry for spam!]

Hey folks,

I have few questions on Web Storage Spec.  I have checked the 
content of both latest published spechttp://www.w3.org/TR/webstorage/ and  
latest editors spechttp://dev.w3.org/html5/webstorage/.  And the questions 
are applicable to both the versions of the spec.

Section: 4.4.2 Processing model
Text:
1.   Open a new SQL transaction to the database, and create a 
SQLTransactionhttp://www.w3.org/TR/webstorage/#sqltransaction object that 
represents that transaction. If the mode is read/write, the transaction must 
have an exclusive write lock over the entire database. If the mode is 
read-only, the transaction must have a shared read lock over the entire 
database. The user agent should wait for an appropriate lock to be available.

Concerns:
-  Why is the spec mandating a transaction to take an *exclusive write 
lock on the entire database*?  No database book design mandates it.  In fact, 
many client databases out there don't do this.  I guess SQLite does this kind.  
But that does not mean that all implementations have this nature.  I am kind of 
worried that we are putting implementation in theory.  For me they are too 
separate, there are many ways a database could be designed.  Like, 
log+checkpoint approach,  shadow copy, version store, journals ...etc.  I guess 
spec should say what a browser should do and not how.

I would be happy to get enlightened.

Thanks,
Laxmi






Re: Web IDL syntax

2009-07-23 Thread Shiki Okasaka
 I think the “Object”, “TRUE” and “FALSE” keywords should be made
 lowercase.

It seems the lower case object  has been used as an interface member
in HTMLAppletElement. Probably should we keep Object as it is? Both
true and false look fine with me.

 - Shiki



Re: Web IDL syntax

2009-07-23 Thread Cameron McCormack
Shiki Okasaka:
  I think the “Object”, “TRUE” and “FALSE” keywords should be made
  lowercase.
 
 It seems the lower case object  has been used as an interface member
 in HTMLAppletElement. Probably should we keep Object as it is? Both
 true and false look fine with me.

I’ll think about it. :-)  HTMLAppletElement can always have

  readonly attribute DOMString _object;

to avoid conflicting with the reserved word.

-- 
Cameron McCormack ≝ http://mcc.id.au/



Re: DataCache API - editor's draft available

2009-07-23 Thread Michael Nordman
This is very encouraging. It sounds like we agree in principal that the best
place for the features represented in the DataCache proposal are extensions
to the AppCache corner of the world.

My preference would be to keep the official AppCache spec stable right now,
but to begin designing those extensions sooner rather than later. This would
help inform the architecture of AppCache implementations underway by browser
vendors today, and help better inform application teams of what to expect as
well. The DataCache proposal is a great starting point.

In a sense, specify these extensions on a development branch of the spec.


On Wed, Jul 22, 2009 at 10:56 PM, Ian Hickson i...@hixie.ch wrote:

 On Wed, 22 Jul 2009, Adrian Bateman wrote:
 
  My preference would be to see this functionality proposed as an
  evolution of AppCache. While I can't commit that we would implement it
  any time soon, it would be included in our considerations and at the
  very least if we implement AppCache we would try to ensure any
  architecture we select wouldn't preclude these extensions in the future.
  With work on the HTML5 spec trying to get it locked down towards a Last
  Call, adding new features to that document is clearly less desirable and
  I understand Ian's reluctance to incorporate extensions there.

 My preference in general would be for us to wait until we have stable,
 well-tested implementations before adding more features to appcache, but I
 certainly think that on the long term, appcache should be extended to
 support more than it does now. As it stands, the model is quite
 extensible, so I think it would be relatively easy for us to move in that
 direction in the future.

 --
 Ian Hickson   U+1047E)\._.,--,'``.fL
 http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
 Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'




Re: DataCache API - editor's draft available

2009-07-23 Thread Nikunj R. Mehta

On Jul 22, 2009, at 10:56 PM, Ian Hickson wrote:


On Wed, 22 Jul 2009, Adrian Bateman wrote:


My preference would be to see this functionality proposed as an
evolution of AppCache. While I can't commit that we would implement  
it

any time soon, it would be included in our considerations and at the
very least if we implement AppCache we would try to ensure any
architecture we select wouldn't preclude these extensions in the  
future.
With work on the HTML5 spec trying to get it locked down towards a  
Last
Call, adding new features to that document is clearly less  
desirable and

I understand Ian's reluctance to incorporate extensions there.


My preference in general would be for us to wait until we have stable,
well-tested implementations before adding more features to appcache,  
but I

certainly think that on the long term, appcache should be extended to
support more than it does now. As it stands, the model is quite
extensible, so I think it would be relatively easy for us to move in  
that

direction in the future.


Don't we have AppCache implementations in Firefox and Safari? Are  
there parts of the spec that we don't yet have implementation  
experience or enough feedback about?


I happen to think that work on DataCache should not wait for the long  
term to arrive. May be it is just me, but I don't see harm in getting  
to an FPWD on DataCache before HTML5 Last Call.


I do agree that we should not create an impression that AppCache is  
solid, and so am open to suggestions about avoiding that.


Nikunj
http://o-micron.blogspot.com






Re: DataCache API - editor's draft available

2009-07-23 Thread Ian Hickson
On Thu, 23 Jul 2009, Nikunj R. Mehta wrote:
 
 Don't we have AppCache implementations in Firefox and Safari? Are there 
 parts of the spec that we don't yet have implementation experience or 
 enough feedback about?

 I happen to think that work on DataCache should not wait for the long 
 term to arrive. May be it is just me, but I don't see harm in getting 
 to an FPWD on DataCache before HTML5 Last Call.

Moving fast is the main way to introduce bugs into the platform. The Web 
platform has enough bugs already, we don't need to make it worse. I would 
be much happier waiting a year even, getting multiple implementations 
shipped, have lots of sites using them, have the features really well 
understood by authors and implementors... We need to let enough time pass 
to make sure there are no latent fundamental design problems, security 
bugs, performance issues, etc.

There's no rush, and there's plenty of other stuff being implemented as 
well. What we have today is two barely tested implementations with 
virtually no usage and comparatively little deployment. Let's not get 
ahead of ourselves.

Having said that, it's certainly fine to work on proposals, to bang on 
ideas for future versions, and so on. I just don't think it's appropriate 
to work on formalising those ideas yet. Of course, I'm just one person, if 
the working group wants to go faster, I can't stop y'all. :-)

-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'