Sounds good!  I've updated the bug to reflect this decision.

Israel
On Friday, December 16, 2011 3:37 PM, Joshua Bell wrote:
On Fri, Dec 16, 2011 at 3:30 PM, Jonas Sicking 
<[email protected]<mailto:[email protected]>> wrote:
On Fri, Dec 16, 2011 at 2:41 PM, Israel Hilerio 
<[email protected]<mailto:[email protected]>> wrote:
> On December 15, 2011 10:20 PM, Jonas Sicking wrote:
>> On Thu, Dec 15, 2011 at 12:54 PM, Joshua Bell 
>> <[email protected]<mailto:[email protected]>>
>> wrote:
>> > Is there any particular reason why IDBTransaction.objectStore() and
>> > IDBObjectStore.index() should be usable (i.e. return values vs. raise
>> > exceptions) after the containing transaction has finished?
>> >
>> > Changing the spec so that calling these methods after the containing
>> > transaction has finished raises InvalidStateError (or
>> > TransactionInactiveError) could simplify implementations.
>>
>> That would be ok with me.
>>
>> Please file a bug though.
>>
>> / Jonas
>>
> Do we want to throw two Exceptions or one?
> We currently throw a  NOT_ALLOWED_ERR for IDBTransaction.objectStore() and a 
> TRANSACTION_INACTIVE_ERR for IDBObjectStore.index().
>
> It seems that we could throw a TRANSACTION_INACTIVE_ERR for both.
> What do you think?
I think InvalidStateError is slightly more correct (for both
IDBTransaction.objectStore() and IDBObjectStore.index) since we're not
planning on throwing if those functions are called in between
transaction-request callbacks, right?

I.e. TransactionInactiveError is more appropriate if it's always
thrown whenever a transaction is inactive, which isn't the case here.

/ Jonas

Agreed - that we should be consistent between methods, and that 
InvalidStateError is slightly more correct for the reason Jonas cites.

For reference, Chrome currently throws NOT_ALLOWED_ERR for 
IDBTransaction.objectStore() but does not throw for IDBObjectStore.index().

Reply via email to