[Dovecot] Status of database integration / Willing to help

Timo Sirainen tss at iki.fi
Fri Jul 18 18:53:31 EEST 2003


On Friday, Jul 18, 2003, at 18:20 Europe/Helsinki, Gregory Hartman 
wrote:

> Then I noticed that you were planning to integrate Dovecot with a SQL
> database.
>
> Is this work in progress?
>
> Do you have a schema?
>
> Is there some way that I could help?

I was playing a bit with Oracle backend since I'll have to do some 
Oracle work anyway. OCI (Oracle Call Interface) is quite horrible to 
work with directly, so I was trying to figure out some easier ways to 
use it. I found libsqlora8 which was a bit better, but still not 
exactly what I wanted. I wrote a few functions on top of that which my 
current code uses. I've later written still somewhat easier API 
directly on top of OCI for another project, which I should port to 
Dovecot.

I'd want so support at least both Oracle and PostgreSQL, so the SQL API 
that is used should work with both of them. Although I'm not sure how 
much code they could share, there's probably quite a lot of 
database-specific optimizations that could be done.

You can get my latest sources from 
http://dovecot.procontrol.fi/tmp/oracle.tar.gz which should be 
uncompressed to src/lib-storage/ directory. oracle.sql contains the 
database schema that I was planning to use. Should be easy to port to 
other databases. The code itself supports at least saving messages and 
fetching their flags and some other things.. It's a bit kludgy too.

I'm not sure about the schema either if it's best possible one. 
Suggestions welcome :) I haven't touched the code for a few months now 
and I don't really plan to for some time, so go ahead and write the 
whole thing yourself if you want :) I can help some with the code of 
course.



More information about the dovecot mailing list