A few words about that:
EGroupware only uses standard queries to the mail server for the header data (sender, subject, …) and queries to the mail content (body).
Thus, the mail server is solely responsible for what search results it returns to the client.
Caching of header data on the client cannot be reasonably implemented in a Web mailer. Where should this be stored? How is it kept up-to-date if several people use the mailbox, …
Thunderbird as a fat client does that. But there is also a repair function for the index files:
In German, sorry…
I wonder why.
EGroupware therefore uses the possibilities of the mail server.
Now you have to distinguish two things:
The index for the headers and the full text index.
I privately use a mail server which has both switched on. So both is very fast with EGw.
In the standard system a mail server always provides a header index.
I’m currently using a Cyrus with full text indexing enabled. So the files are created in every mail folder:
The cyrus.squat file is the full text index, the Cyrus.index is the header index.
So you see: There is nothing to develop/program in EGroupware at first.
Which possibilities EGroupware provides to formulate the queries to the mail server is something else. We can do something about that. We will also…
That in brief for now. Of course, you can make things much more complicated from a technical point of view. I like it as simple as possible. That makes it less error-prone.