we're SUPPOSED to service the queue quickly.
we probably need to differentiate between the recv_time and
original_recv_time. We do that in request->async, but not
in the channel_data_t
if (!cd) return NULL;
worker->num_decoded++;
-
- /*
- * This message has asynchronously aged out while it was
- * in the queue. Delete it, and go get another one.
- */
- if (cd->request.recv_time && (cd->m.when != *cd->request.recv_time)) {
- DEBUG("\t%sIGNORING old message: was %zd now %zd", worker->name,
- *cd->request.recv_time, cd->m.when);
- fr_worker_nak(worker, cd, now);
- cd = NULL;
- }
} while (!cd);
ctx = request = request_alloc(NULL);