Difference between revisions of "IndexedDatabaseFeatures"

From WEBAPPS
Jump to: navigation, search
(+ Issue from Miko Nieminen re adding event notifications for CRUD operations)
m (Minor editing)
Line 12: Line 12:
 
Indexed Database feature requests that are not included in the first version of the spec:
 
Indexed Database feature requests that are not included in the first version of the spec:
  
* [http://lists.w3.org/Archives/Public/public-webapps/2013JanMar/0246.html ''Add events for object storage CRUD ops (add, put and delete')']; Miko Nieminen on 5-Feb-2013. Additional threads: [http://lists.w3.org/Archives/Public/www-tag/2013Feb/0023.html www-tag] (10-Feb-2013) and [http://lists.w3.org/Archives/Public/public-webapps/2013JanMar/0447.html public-webapps] (17-Feb-2013).
+
* [http://lists.w3.org/Archives/Public/public-webapps/2013JanMar/0246.html ''Add events for object storage CRUD ops (add, put and delete)'']; Miko Nieminen on 5-Feb-2013. Additional threads: [http://lists.w3.org/Archives/Public/www-tag/2013Feb/0023.html www-tag] (10-Feb-2013) and [http://lists.w3.org/Archives/Public/public-webapps/2013JanMar/0447.html public-webapps] (17-Feb-2013).
 
* [http://lists.w3.org/Archives/Public/public-webapps/2012JulSep/0310.html ''Regular Expression search'']; Michael Brooks on 31-July-2012
 
* [http://lists.w3.org/Archives/Public/public-webapps/2012JulSep/0310.html ''Regular Expression search'']; Michael Brooks on 31-July-2012
 
* [http://lists.w3.org/Archives/Public/public-webapps/2012AprJun/0816.html ''Binary Keys'']; Joran Greef on 21-May-2012
 
* [http://lists.w3.org/Archives/Public/public-webapps/2012AprJun/0816.html ''Binary Keys'']; Joran Greef on 21-May-2012
* "Evictable" stores (see [http://www.w3.org/Bugs/Public/show_bug.cgi?id=11350 Bug 11350])
+
* ''ObjectStores should have a way to hint that they're "evictable"''; Jeremy Orlow; see [http://www.w3.org/Bugs/Public/show_bug.cgi?id=11350 Bug 11350]
 
* Being able to cancel "versionchange" events<br>This would allow a page to signal back to the page calling setVersion that a version upgrade isn't possible right now. Not sure if there are terribly good use cases though.
 
* Being able to cancel "versionchange" events<br>This would allow a page to signal back to the page calling setVersion that a version upgrade isn't possible right now. Not sure if there are terribly good use cases though.
 
* Fast cursors<br>The implementation can load several entries at once, expecting that .continue() will be called. However, since we have a requirement that callbacks always happen in the order they were placed, if calls to .continue() is intermixed with other requests, the "prefetching" of cursor content is basically destroyed. We can fix this by allowing "fast" cursor iteration. Callbacks for such iteration would be prioritized and fire before all other callbacks. We can do this either through a objectStore.openFastCursor() API, or a cursot.fastContinue() API.
 
* Fast cursors<br>The implementation can load several entries at once, expecting that .continue() will be called. However, since we have a requirement that callbacks always happen in the order they were placed, if calls to .continue() is intermixed with other requests, the "prefetching" of cursor content is basically destroyed. We can fix this by allowing "fast" cursor iteration. Callbacks for such iteration would be prioritized and fire before all other callbacks. We can do this either through a objectStore.openFastCursor() API, or a cursot.fastContinue() API.

Revision as of 13:00, 21 February 2013

This wiki documents requests for Indexed Database features that are not included in the first version of the spec.

Those with write access to this document are encouraged to update this document and/or to use Bugzilla to submit a feature request. Also, see:

If you cannot create a Bugzilla bug for a change requests and/or feature, send your request to the WG's public-webapps@w3.org list (please use with a Subject header of "[IDB Feature Request]").

Feature List

Indexed Database feature requests that are not included in the first version of the spec:

  • Add events for object storage CRUD ops (add, put and delete); Miko Nieminen on 5-Feb-2013. Additional threads: www-tag (10-Feb-2013) and public-webapps (17-Feb-2013).
  • Regular Expression search; Michael Brooks on 31-July-2012
  • Binary Keys; Joran Greef on 21-May-2012
  • ObjectStores should have a way to hint that they're "evictable"; Jeremy Orlow; see Bug 11350
  • Being able to cancel "versionchange" events
    This would allow a page to signal back to the page calling setVersion that a version upgrade isn't possible right now. Not sure if there are terribly good use cases though.
  • Fast cursors
    The implementation can load several entries at once, expecting that .continue() will be called. However, since we have a requirement that callbacks always happen in the order they were placed, if calls to .continue() is intermixed with other requests, the "prefetching" of cursor content is basically destroyed. We can fix this by allowing "fast" cursor iteration. Callbacks for such iteration would be prioritized and fire before all other callbacks. We can do this either through a objectStore.openFastCursor() API, or a cursot.fastContinue() API.
  • Change-tracking events for synchronizing
    Basically we need to figure out what primitives we need to provide to allow applications to build synchronizing of IndexedDB databases.
  • Fulltext index
    Or whatever primitives needed to support them. Google is doing very active research here.
  • More powerful indexes
    For example the ability to pass in index values during the objectStore.put/add call, or expressions/callbacks instead of plain keypaths.
  • IDBObjectStore/IDBIndex.exists(key)
  • IDBFactory.databases, but non-racy, with guarantees that the set of databases doesn't change.
  • Rewindable cursors
  • Remove DOMStringList usage (see Bug 16103)