[Chandler-dev] Index ordering and case sensitivity
stearns at osafoundation.org
Wed Nov 15 12:10:56 PST 2006
OK, after a conversation in IRC, Grant, Andi, and I have a strategy:
- I'll use 'method' indexes for the dashboard columns that involve
string indexing (they take two UUIDs and return -1|0|1, so avoid item
loading overhead, but still not bad when the items are already loaded);
this fits in well with the IndexDefinition items I'm already creating
for each column, so that's where I can put the method.
- 'method' indexes allow me to do locale-based case-insensitive comparison.
- I'll add code to detect a locale change at startup, and either force
--repair (which rebuilds indexes), or just remove all the dashboard
indexes (they'll be lazily recreated as needed).
Grant Baillie wrote:
> On 15 Nov, 2006, at 11:09, Bryan Stearns wrote:
>> In looking into bug 5718, I noticed that string comparison for
>> indexing is done without ignoring case.
>> This probably isn't what users expect, but the fix for this isn't
>> simple: case-insensitive comparison is locale-sensitive, which would
>> indicate that we'd need to reindex when the user changes locales,
>> which could be expensive.
>> Any ideas on how to deal with this problem?
> I'd vote for locale-aware sorting, and reindexing when the user
> changes locales. Changing locales isn't a particularly frequent
> operation, and AFAIK it's only supported via relaunch of Chandler for
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> Open Source Applications Foundation "chandler-dev" mailing list
More information about the chandler-dev