Hi
Well, i think, I understand, what is the problem. I have 3 messages
without entries in dbmail_headervalue:
mysql> select p.id from dbmail_physmessage p LEFT JOIN
dbmail_headervalue h ON p.id = h.physmessage_id WHERE h.physmessage_id
IS NULL;
+------+
| id |
+------+
| 3335 |
| 7446 |
| 7503 |
+------+
3 rows in set (0.06 sec)
So, dbmail tryes to create them. But this messages are very small and do
not have date field:
mysql> select * from dbmail_physmessage where id=3335;
+------+-------------+---------+---------------------+
| id | messagesize | rfcsize | internal_date |
+------+-------------+---------+---------------------+
| 3335 | 12 | 2 | 2007-11-07 13:50:41 |
+------+-------------+---------+---------------------+
1 row in set (0.00 sec)
mysql> select * from dbmail_physmessage where id=7446;
+------+-------------+---------+---------------------+
| id | messagesize | rfcsize | internal_date |
+------+-------------+---------+---------------------+
| 7446 | 12 | 2 | 2008-12-05 11:35:44 |
+------+-------------+---------+---------------------+
1 row in set (0.00 sec)
mysql> select * from dbmail_physmessage where id=7503;
+------+-------------+---------+---------------------+
| id | messagesize | rfcsize | internal_date |
+------+-------------+---------+---------------------+
| 7503 | 11 | 2 | 2008-12-08 15:17:20 |
+------+-------------+---------+---------------------+
But dbmail_message_cache_datefield tryes to insert default value, if
there is no date field:
if (! (value = (char *)dbmail_message_get_header(self,"Date")))
date = (time_t)0;
which is '1970-01-01 00:00:00'.
But there is such an entry already, so it fails.
How can I workadound this easely? Is this an old known bug?
--
Best regards, Sergey Spiridonov
_______________________________________________
DBmail mailing list
[email protected]
http://mailman.fastxs.nl/cgi-bin/mailman/listinfo/dbmail