Cancelling a cpuworker job doesn't decrement the total pending tasks counter
cpuworker_cancel_circ_handshake() should decrement the
total_pending_tasks counter if the job was successfully cancelled meaning "job" if not NULL.
This issue has been observed with a fast relay where enough jobs were cancelled making
if (total_pending_tasks >= max_pending_tasks) always true. There are no ways to decrement the counter without having a worker actually completing a job that now can't be queued because we've reached the maximum task allowed.
This makes the relay stop working correctly since no onionskin job can be achieved anymore.