IDBFactory.deleteDatabase can be called without ever invoking the 
IDBDatabase.setVersion and requires a VERSION_CHANGE transaction for it to 
happen.  Unfortunately, there is no way for the caller of deleteDatabase to 
receive a blocked event because IDBRequest doesn't define an onblocked event 
handler.  Not having this functionality will prevent the deleteDatabase caller 
from understanding that someone has the DB locked and that the request cannot 
be honored.



To support this scenario we would have to change the return value of 
IDBFactory.deleteDatabase to return an IDBVersionChangeRequest.  This will 
allow the caller to register an onblocked event handler and receive an event 
when the DB is locked by someone else.



In addition, we may want to update the text in "4.10 Database deletion steps" 
step #6 from "fire a blocked event at request" to "fire a block event at 
version change request".



Do you agree?



Israel

Reply via email to