Re: [Bug 10430] New: [IndexedDB] We need to make it more clear IDBRequests can be reused and spec readyState's behavior

On Wed, Aug 25, 2010 at 4:12 PM, Jeremy Orlow <jorlow@chromium.org> wrote:

> Also, the constants for the ready state should start with 0, not 1.
>
> Also, what happens if someone does the following:
> request = objectStore.openCursor();
> request.onsuccess(function() {
>     event.result.continue();
>     request.abort();
>     event.result.continue();
> }
>

After thinking about this more, I think we have 2 options: either .abort()
kills all pending and future requests on that IDBRequest object or it
cancels all requests that have been made up until that point.  I.e. if we
did

event.result.continue();
event.result.continue();
event.abort();
event.result.continue();
event.result.continue();

Either the 3rd and 4th results should be returned or no results should be
returned, depending on what we decide here.

Unless someone can present a good use case for why abort shouldn't abort
pending and future requests, I suggest we go with that behavior.


> Also, is it possible to get the IDBRequest object from within the
> openCursor/continue events without saving it off somewhere?  If not, it
> probably should be.
>
> J
>
> On Wed, Aug 25, 2010 at 3:50 PM, <bugzilla@jessica.w3.org> wrote:
>
>> http://www.w3.org/Bugs/Public/show_bug.cgi?id=10430
>>
>>           Summary: [IndexedDB] We need to make it more clear IDBRequests
>>                    can be reused and spec readyState's behavior
>>           Product: WebAppsWG
>>           Version: unspecified
>>          Platform: PC
>>        OS/Version: All
>>            Status: NEW
>>          Severity: normal
>>          Priority: P2
>>         Component: Indexed Database API
>>        AssignedTo: andreip@google.com
>>        ReportedBy: jorlow@chromium.org
>>         QAContact: member-webapi-cvs@w3.org
>>                CC: mike@w3.org, public-webapps@w3.org
>>
>>
>> http://www.w3.org/TR/IndexedDB/#idl-def-IDBRequest right now clearly
>> assumes
>> IDBRequests are only going to be used once.  But IDBCursor.continue()
>> reuses
>> them.  At the very least, we'll need to clean up the .readyState section
>> to
>> make it clear it's possible to go from DONE to LOADING (or we can remove
>> it
>> altogether?).  I think some notes explicitly pointing out that some parts
>> of
>> the API reuse them would be helpful as well.
>>
>> --
>> Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
>> ------- You are receiving this mail because: -------
>> You are on the CC list for the bug.
>>
>>
>

Received on Wednesday, 25 August 2010 15:42:42 UTC