5 Jun
2010
When I started developing GoESMTP, using MySQL was a quick path to getting DB services working without much headache (thanks to Phils great GoMySQL library)... However the time has come to move away from MySQL and start using a dedicated specialist internal DB.
The reasons for this are:
1) Installation and configuration of GoESMTP is unnecessarily complex with the additional steps to configure MySQL (create DB, create tables, add users etc).
2) There has always been the question of performance. Although I have never done any performance testing I am assuming that using a another server process to handle the DB is inherently slower than using an internal DB.
3) From time to time I am still getting "#2027 Malformed Packet" errors from the GoMySQL library and this is causing message loss. As they are rare it is hard to track them down. So I will use the time and energy, I would use in finding the problem, in writing my own internal DB.
The upshot of all this is that the next revision of GoESMTP will be a while off while I hack the entire system to use the new internal (oh, and I will write the internal DB as well!).