Marc Perkel scribbled:
Repeat after me - think outside the box.
Did you miss the part where I said we've already tried this?
Not only have we thought outside the box, but we've smashed it up and built several alternatives to see which one sucked the least. Turns out, SQL backends suck the most.
Please try to keep up :)
Marc Perkel also scribbled:
To do this with MySQL would be trivial. To do it without a database isn't possible.
Actually you could do that with a tiny Sieve extension.
I don't think you really understand what you are even proposing. Your statement would be better phrased "to do it without an index would be slow".
If you wanted to create a database server for mail, with a mail-specific query language, then that database might be called "Dovecot", and the query language might be called "IMAP".
Innovation is not an excuse for lousy engineering.
As usual, it turns out to be bad design practice to say "let's deploy shinytoy for feature X!" rather than say "we need capability X! What's a creative way to achieve that?". Which is why necessity is the mother of invention.
/JG