如果我有一个acks_late=True
的芹菜任务,并且该任务会引发硬超时或软超时异常,那么该任务是否已从队列中删除并被删除,或者是否已重试? acks_late
的文档无论如何都没有提及。
答案 0 :(得分:2)
根据Should I use retry or acks_late,
Task.retry用于重试任务,特别是对于可以使用try:block捕获的预期错误。 AMQP事务不用于这些错误:如果任务引发异常,它仍然被确认!
由于SoftTimeLimitExceeded是一个例外,因此它确实会确认消息并将其从队列中删除。