- From: <bugzilla@jessica.w3.org>
- Date: Tue, 23 Apr 2013 19:39:58 +0000
- To: public-webapps@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=21801
Bug ID: 21801
Summary: [IndexedDB] Cursor operations when source deleted are
not defined
Classification: Unclassified
Product: WebAppsWG
Version: unspecified
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P2
Component: Indexed Database API
Assignee: dave.null@w3.org
Reporter: jsbell@chromium.org
QA Contact: public-webapps-bugzilla@w3.org
CC: mike@w3.org, public-webapps@w3.org
In a version change transaction:
store = db.createObjectStore("store");
db.deleteObjectStore("store");
store.put(0, 0); // throws InvalidStateError since object is deleted
But consider:
store = db.createObjectStore("store");
store.put(0, 0);
store.openCursor().onsuccess = function(e) {
var cursor = e.target.result;
if (cursor) {
db.deleteObjectStore("store");
cursor.continue();
}
};
The behavior here does not appear to be specified. It seems to me it should
also throw InvalidStateError. This could be specified by adding to the
operation descriptions for IDBIndex continue, advance, update and delete:
"If the cursor's source or effective object store has been deleted, the
implementation MUST throw a DOMException of type InvalidStateError."
(The same would apply to operations on an index if its object store is deleted.
That also seems underspecified.)
--
You are receiving this mail because:
You are on the CC list for the bug.
Received on Tuesday, 23 April 2013 19:39:59 UTC