Zimbra Deferred Queue

Support

Support
A public community space for Developers, IT Professionals, Architects, and System Administrators to engage and help each other, share knowledge and best practices, find product documentation and Q&A, and discuss technology oriented topics.

Zimbra Deferred Queue

This question has suggested answer(s)

Please help, not really familiar with Zimbra at all, I need to clear the deferred queue in Zimbra as I have  nearly 200 emails sitting in the queue. I have tried to clear this using the Admin console but believe this needs to be done using the console, do i need to install postfix.

thank you

All Replies
  • The emails are held in the Quartz Dynamic Job Queue, please contact us if you would like assistance in clearing this out as it's beyond the scope of a simple reply.

  • If you have access to the database, you would need to look in the tables:

    QRTZ_DYNAMIC_JOB_DETAILS

    QRTZ_DYNAMIC_TRIGGERS

    You will need to select the jobs that match the proper class name from QRTZ_DYNAMIC_JOB_DETAILS -

    Select * from QRTZ_DYNAMIC_JOB_DETAILS where JOB_CLASS_NAME = 'the class name of the job you want to nuke'

    Keep track of the "JOB_NAME' and then delete everything from QRTZ_DYNAMIC_TRIGGERS where JOB_NAME =  all of the job name colums you selected in the previous query.  Then you can delete from the job details table...

    So something like this - * I did not test this code.

    DECLARE @JOB_NAME NVARCHAR(200)
    
    WHILE(SELECT * FROM QRTZ_DYNAMIC_JOB_DETAILS WHERE JOB_CLASS_NAME = 'MyNamespace.MyClass, MyDll')
    
    SET @JOB_NAME = (Select top 1  FROM QRTZ_DYNAMIC_JOB_DETAILS WHERE JOB_CLASS_NAME = 'MyNamespace.MyClass, MyDll')
    
    DELETE FROM QRTZ_DYNAMIC_TRIGGERS WHERE JOB_NAME = @JOB_NAME
    DELETE FROM QRTZ_DYNAMIC_JOB_DETAILS WHERE JOB_NAME = @JOB_NAME
    
    END
    
    
    
    

  • thanks Luke, I 'll give it a try.

  • Depending on how many jobs are in there (and if different jobs use the same class name) you might also want to limit your query to a date range if the jobs has been stuck for a while and you don't want to risk deleting valid email jobs from other processes.