W3C home > Mailing lists > Public > public-webapps@w3.org > April to June 2010

Re: [IndexedDB] Multi-value keys

From: Jonas Sicking <jonas@sicking.cc>
Date: Fri, 18 Jun 2010 17:37:41 -0700
Message-ID: <AANLkTik61iny9D7-GM0i2ZQqokVm5SJ5B70InmkPsreH@mail.gmail.com>
To: Mikeal Rogers <mikeal.rogers@gmail.com>
Cc: Webapps WG <public-webapps@w3.org>
Yes, I think this is orthogonal to the issue of composite keys so I'd
rather deal with that in a separate thread.

/ Jonas

On Fri, Jun 18, 2010 at 5:30 PM, Mikeal Rogers <mikeal.rogers@gmail.com> wrote:
> The biggest hole I see, even larger than sorting other types, is what
> we use for string comparisons. In CouchDB we use the unicode collation
> algorithm which is heavy but very well defined and works across
> various localizations.
> -Mikeal
> On Fri, Jun 18, 2010 at 5:26 PM, Jonas Sicking <jonas@sicking.cc> wrote:
>> I didn't take it as opposing at all. I figured you'd like it as I
>> based it on your description of how you do it in CouchDB ;-)
>> I just wanted to make sure that we nail down all the details,
>> including the sorting order, so if you see anything wrong definitely
>> point it out!
>> / Jonas
>> On Fri, Jun 18, 2010 at 5:22 PM, Mikeal Rogers <mikeal.rogers@gmail.com> wrote:
>>> Reading back over my email is sounds opposing and that wasn't my
>>> intention, it was a long way of saying +1 and giving an explanation
>>> for why we went with the same approach in CouchDB.
>>> -Mikeal
>>> On Fri, Jun 18, 2010 at 5:06 PM, Jonas Sicking <jonas@sicking.cc> wrote:
>>>> On Fri, Jun 18, 2010 at 5:03 PM, Mikeal Rogers <mikeal.rogers@gmail.com> wrote:
>>>>> The complex keys are how we do this in CouchDB as well. But, again,
>>>>> the sorting algorithm needs to be well defined in order for it work.
>>>>> http://wiki.apache.org/couchdb/View_collation#Collation_Specification
>>>>> Most pertinent to your example is how arrays of varying length might
>>>>> be ordered, for instance range queries over your example would break
>>>>> for [firstName, lastName] if an entry omitted lastName and arrays were
>>>>> sorted by length and then by comparison of each item. This is why the
>>>>> CouchDB collation algorithm sorts:
>>>>> ["a"]
>>>>> ["b"]
>>>>> ["b","c"]
>>>>> ["b","c", "a"]
>>>>> ["b","d"]
>>>>> ["b","d", "e"]
>>>> How is that different from what I proposed? I think that was what I
>>>> intended to propose, but I might be missing some edge cases :)
>>>> I take it that ["a", "z"] would be sorted between ["a"] and ["b"]?
>>>> / Jonas
Received on Saturday, 19 June 2010 00:38:33 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:26:25 UTC