Kolab2 architecture/format flaws

Zachariah Mully zmully-kolab at smartbrief.com
Mon May 16 20:39:23 CEST 2005


On Sun, 2005-05-15 at 10:24 +0200, Martin Konold wrote:
> You are still trying to "abuse" the IMAP store like a relational database. 

That's because the datastore probably should have been a relational
database in the first place instead of an IMAP store (which I still
don't understand).  Instead, functionality has to be duplicated all over
the place...

> > I know Cyrus IMAPd is supposed to be able to index/cache headers so maybe
> > this small change could make a big difference?
> 
> This could help/hide the problem partially while putting load on the server 
> and the problem will reappear latter.
> 
> BTW I don't understand we you don't like the proposed solution. Can you please 
> explain why it is so difficult?

Speaking for myself, I don't like it when I have to duplicate
functionality in two different places, in two different languages
because of an odd mime-type requirement. I spent some time testing Cyrus
search capabilities on Friday and I was pretty impressed with them. On
an unindexed calendar store, where I had manually set all kolab mime
types to text/x-vnd.kolab.event, with 7600 distinct objects, finding a
unique message using SEARCH BODY took 0.730 seconds.  On the same
calendar store, indexed with squatter, it took 0.070 seconds. And this
is on a craptacular machine, that is nowhere near as fast as what some
of you are running out in production. 

I don't think it's unreasonable to allow for this type of searching to
be done. It might not handle a super large webclient only installation,
but for the majority of installations, I bet you'd never notice the
difference. It's simple and robust to implement, instead of having to
write a db cache driver and syncronization code for the webclient, you'd
simply be able to request the required data from the server.

Z




More information about the users mailing list