W3C home > Mailing lists > Public > public-webapps@w3.org > January to March 2011

Re: Indexed Database API

From: Ben Dilts <ben@lucidchart.com>
Date: Fri, 4 Mar 2011 12:33:42 -0700
Message-ID: <AANLkTi=XvJ2rBiBMPHQur=7pr-9phYTpOiJ6OFBdy6vR@mail.gmail.com>
To: Jeremy Orlow <jorlow@chromium.org>
Cc: public-webapps@w3.org
Jeremy,

Thanks for the reply!  However, my indices are not typically unique,
contiguous numbers.  For example, I have an index on an item's "saved" date,
as a MySQL-style date/time string.  These dates are not necessarily unique,
and are certainly not contiguous.  So if a user is currently viewing the
first 20 items in this object store, and would like to jump to page 5 (items
81-100), how would I go about that?  I don't know what key value is in the
81st position in the index.  In fact, the key value in position 81 may also
occupy positions 80 and 82--if I skip to that key value, I may end up in a
slightly wrong place.


Ben Dilts

On Fri, Mar 4, 2011 at 11:33 AM, Jeremy Orlow <jorlow@chromium.org> wrote:

> On Tue, Mar 1, 2011 at 11:02 PM, Ben Dilts <ben@lucidchart.com> wrote:
>
>> Why is there no mechanism for paging results, a la SQL's "limit"?  If I
>> want entries in positions 140-159 from an index, I have to call continue()
>> on a cursor 139 times, which in turn unserializes 139 objects from my store
>> that I don't care about, which in FF4 is making a lookup in IndexedDB
>> sometimes take many seconds for even a few records.  It makes no sense--am I
>> just missing something in the spec?
>
>
> Just use cursor.continue() with a key parameter to skip the cursor ahead to
> where you care about.
>
> J
>
Received on Friday, 4 March 2011 19:34:37 GMT

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