This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
It's possible for indexes to be non-unique in which case IDBIndex.get* may lookup one of several entries. We should specify which is returned in a deterministic way. It should probably be connected to the order in which cursors return duplicates as well.
I recall discussing this on the list. Like you point out, the same issue exists when using a cursor created using IDBIndex.createObjectCursor. Here we need to define which order duplicates are iterated in. IMO the order should be the key order in the objectStore. I.e. items in indexes are first ordered by their keyPath value, then by the objectStores key value. get* functions should return the first item according to this order.
Working at rewriting cursor handling, especially related to indexes.
Should be fixed by http://dvcs.w3.org/hg/IndexedDB/rev/8716288a4fe1 Would be great if someone could check that it looks correct.