Add ability for administrators to clear mailin quarantine from web UI

Bug #613424 reported by Chris Rossi
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KARL3
Fix Released
Low
Chris Rossi

Bug Description

It would be useful if messages in the mailin quarantine could be either deleted or re-queued from the admin UI.

Changed in karl3:
assignee: nobody → Chris Rossi (chris-archimedeanco)
importance: Undecided → Low
milestone: none → m46
Changed in karl3:
milestone: m46 → m47
Changed in karl3:
milestone: m47 → m48
Changed in karl3:
status: New → In Progress
Revision history for this message
Chris Rossi (chris-archimedeanco) wrote :

Now when clicking on "View mailin quarantine" in the admin UI, each entry in the quarantine will have 'Requeue' and 'Delete' buttons. Additionally there are global 'Requeue all' and 'Delete all' buttons at the top of the screen. When a message is requeued is removed from the quarantine and placed back in the regular queue for processing. The intent is for this operation to be performed *after* steps have been taken to correct whatever problem caused the message to be quarantined. Requeue should be used preferentially over delete. When a message is deleted it is simply removed from postoffice entirely--no further processing will be performed. This operation may be useful in the case where a message is obviously junk mail which would have been bounced by the system anyway, and a system administrator merely wants to clear the error status for the quarantine. Steps should still be taken, however, to ascertain the cause of the message being quarantined and fix the problem so messages (even junk mail) do not end up in the quarantine in the future.

A strategy for testing on staging would be to place some messages in quarantine artificially. Some steps to do that:

1) Turn off mailin for one of the staging instances.

2) Send email messages to an address bound for that instance.

3) Log in to the staging server as postmaster.

4) $ cd /home/postmaster/postoffice

5) $ bin/po_debug

6) >>> print '\n'.join(root.keys())

  (Will show list of queues available.)

7) >>> q = root['<instance>-staging']

  (Make sure you get the *staging* queue for the instance you are testing.)

8) >>> q.quarantine(q.pop_next(), 'Some error message.')

  (This will place a single message in the quarantine. This step can be repeated for as many messages as are in the queue.)

9) >>> import transaction

10) >>> transaction.commit()

Now that you have messages in the quarantine, you can test. Wash, rinse and repeat.

Changed in karl3:
status: In Progress → Fix Committed
Changed in karl3:
milestone: m48 → m49
Revision history for this message
JimPGlenn (jpglenn09) wrote :

fixed

Changed in karl3:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.