Hi guys Class mClockQueue calls PullPriorityQueue::pull_request in function dequeue() . But PullPriorityQueue::pull_request may return a "future" value. That means the mclock tag of the request are greater than now, so it should be executed in the future instead of now.The mistake is that the mClockQueue::dequeue() do not consider about the type of return value and execute the request immediately. What is more serious is that PullPriorityQueue remains the request in queue and it would be executed twice in the future. From Weihaocheng