Delayed Queues/Messages

Registered by Kurt Griffiths

Add an optional "delay" field to messages that causes them to be un-claimable for a certain amount of time.

Note: If we implement delayed queues (where a message doesn't become claimable for a specified time period), it would facilitate an auditing observer process - the auditor would be guaranteed to see messages before they were claimed, and could even redact messages if needed

Blueprint information

Status:
Complete
Approver:
Feilong Wang
Priority:
High
Drafter:
Feilong Wang
Direction:
Needs approval
Assignee:
yangzhenyu
Definition:
Review
Series goal:
Accepted for queens
Implementation:
Implemented
Milestone target:
milestone icon queens-3
Started by
yangzhenyu
Completed by
yangzhenyu

Related branches

Sprints

Whiteboard

1. I will add a attribute delay_ttl for queue and message.
2. The value of the delay_ttl attribute ranges from 0 to 900s(15 mins).
3. The message does not become claimable for a delay_ttl time at the first claim.
4. When the delay_ttl expire, the message can be claimed as usual.

Gerrit topic: https://review.openstack.org/#q,topic:bp/delayed-queues,n,z

Addressed by: https://review.openstack.org/508669
    [POC]Support delayed queues for mongo

Addressed by: https://review.openstack.org/512919
    Add spec for delayed queues

Addressed by: https://review.openstack.org/512939
    Support delayed queues for redis

Addressed by: https://review.openstack.org/512970
    Support delayed queues for swift

Addressed by: https://review.openstack.org/513283
    Test delayed queues

Addressed by: https://review.openstack.org/513284
    Doc of delayed queues

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.