tailwatchd UNIQUE constraint failed due to Exim too much retry

Operating System & Version
CloudLinux 7.8
cPanel & WHM Version
11.90.0.16

manoaratefy

Well-Known Member
Nov 17, 2018
58
5
8
Madagascar
cPanel Access Level
Root Administrator
Twitter
Good morning,

I have issue with tailwatchd:

[4076048] [2020-11-06 06:48:30 +0100] [Cpanel::TailWatch::Eximstats] [ERR] SQL Failed with error ((XID gfmedq) The system received an error from the “SQLite” database “/var/cpanel/eximstats_db.sqlite3”: SQLITE_CONSTRAINT (UNIQUE constraint failed: defers.sendunixtime, defers.msgid, defers.email)): INSERT INTO defers (sendunixtime,msgid,email,transport_method,message,host,ip,router,deliveryuser,deliverydomain) VALUES('1604600240','xxxxxxxxxxxxxxx','[email protected]','dovecot_virtual_delivery','Retry time not yet reached','','','virtual_user','xxxxxxxxxxxxx','xxxxxx.com')

After checking Exim log, I see that the issue is due to a lot of "Retry time not yet reached" of the same email in the log in the same time:

2020-11-06 08:15:45 xxxxxxxxxxxxx == [email protected] R=virtual_user T=dovecot_virtual_delivery defer (-52): Retry time not yet reached
2020-11-06 08:15:45 xxxxxxxxxxxxx == [email protected] R=virtual_user T=dovecot_virtual_delivery defer (-52): Retry time not yet reached

Is there a way to solve this issue? At this time, I'm just removing these lines from the log to make things working, but I have to do it frequently.
 
Last edited by a moderator:

cPRex

Jurassic Moderator
Staff member
Oct 19, 2014
15,235
2,423
363
cPanel Access Level
Root Administrator
For this issue it would likely be best to attempt a rebuild of the eximstats database. We have details on performing that work in our article here:


Can you try that and let me know how that goes?
 

manoaratefy

Well-Known Member
Nov 17, 2018
58
5
8
Madagascar
cPanel Access Level
Root Administrator
Twitter
Good morning,

I already tried that but the exim stats database would only accept rebuild once time there is no duplicate lines on the Exim log (as the SQLite constraint doesn't allow a such thing). But the problem is that there are duplicates lines on the Exim log.