Bugfix: Deadlock in queue when lease/reservation runs out

As an example, if Job A locked a resource and Job B reserved a resource but was postponed for a later execution, the reservation was still stored in the ReservedExternalResourceAction even though the lease time run out . This leads to a dead lock for the Job B, because it can't reserve another resource in the ExternalResourceQueueTaskDispatcher ever again.