W3C home > Mailing lists > Public > public-webapps@w3.org > July to September 2010

Re: [IndexedDB] Need a method to clear an object store

From: Jonas Sicking <jonas@sicking.cc>
Date: Tue, 3 Aug 2010 12:20:57 -0700
Message-ID: <AANLkTinFL1HasPmBso+F1r-k-8oMFBVps9QmtfMMGjqe@mail.gmail.com>
To: ben turner <bent.mozilla@gmail.com>
Cc: public-webapps WG <public-webapps@w3.org>
On Tue, Aug 3, 2010 at 12:09 PM, ben turner <bent.mozilla@gmail.com> wrote:
> Hi folks,
>
> Currently there are only two ways to clear an object store of all
> data: (i) remove the object store and recreate it, or (ii) open a
> cursor and call remove for all entries. I propose a third, simpler
> approach:
>
> interface IDBObjectStore
> {
>  ...
>  void clear();
>  ...
> };
>
> Any thoughts?

Some background. At least in our implementation, removing each
individual item is significantly slower than removing and recreating
the objectStore. It's also significantly slower than a 'clear'
function is. And while tearing down and recreating the objectStore
works, it's fairly complex if there are multiple indexes on the store.
Adding a clear() function, while redundant, should make things easier
for developers while adding very little work in the implementation.

I think there is a bug in the above proposal though. clear() should
return a IDBRequest. However the .result of the request should likely
be null.

/ Jonas
Received on Tuesday, 3 August 2010 19:21:53 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:40 GMT