On Sun, Oct 12, 2003 at 05:18:37PM -0400, Matthew T. O'Connor wrote: > On Sun, 2003-10-12 at 17:08, Ilja Booij wrote: > > > But it is getting too many rows, right? > > yes it is. > > > Perhaps a select_limit function > > > should be written for each sql driver. Or, even easier, why not add a > > > header flag to the messageblks table? > > Hmm, this last suggestion is rather nice I think. (I like easy > > solutions!) > > Shouldn't the headers be separated from the message body? It would > solve the problem above, and probably improve performance. There should > be a message_headers table that just holds the part of the message body > that contains the headers.
Since there is only one set of headers per message, why not add a headers field to physmessage? > This would solve the problem of selecting too many rows, it would > probably be faster since the message headers are usually much smaller > than the size of a full message_blk, and it fixes the problem of the > message headers exceeding the size of a message_blk which currently > would cause problems. Does anyone have any insight into why messages are split into messageblks? The only MySQL limit I could find that might cause problems is max_allowed_packet, but that can be configured. I did try increasing READ_BLOCK_SIZE, and got a memory allocation error from dbmail-smtp, but I assume that can be fixed. xn