Hello,
 
please let me describe in detail what problems I have working with qmail correctly. I have a database with about 20000 mail adresses inside. To everyone of that adresses I wish to send the same mail (0,1 MB of size) using qmail. It is no problem to create such a mail and to inject it to qmail´s queue by using qmail-inject and sending the mail on standard input. It is easy to send single mails by that method. But with huge amounts of data there occur a few problems that I cannot fix.
The easiest way to do that work would be to generate 20000 emails and to inject them via qmail-inject. But this technique has a few disadvantages: You fill up your harddisk with many, many copies of the nearly same file. This seams to me as wasting resources. By the way you have the problem that qmail´s queue gets filled up after only a few messages (about 1000) and you always get fatal errors by qmail-inject. I got the following ones:
 
qmail-inject: fatal: qq trouble creating files in queue (#4.3.0)
qmail-inject: fatal: envelope adress too long for queue (#5.1.3)
 
I am sure to have enough disk space and no quotas limiting it. There the problem can´t lie. The best way I could imagine to do that job would be: You create your mail only ONCE. You send it to qmail. You tell qmail that you want it delivering that mail to 20000 adresses. Qmail should decide how to do that job. I think there are more efficient algorhytms to send mails than one after another as mail servers have the ability to deliver the same mail to many recipients which would enormally decrease resource wasting. But how can I set up such a method???
 
Do I have to filter adresses that reside on the same remote host or is that a abilty of qmail? How do I prevent queue from becoming filled up? Is there any way to talk to qmail bedirectionally via a technique similar to APIs (You call a function and get back detailed results, for example - queue full, retry later or - even better - retry within xxx seconds as qmail should know about its delivering speed and so on...)?
 
Many thanks for your help
Volker Jung
 

Reply via email to