Aws::MTurk::Errors::RequestError: HIT с идентификатором... уже существует
Amazon Mechanical Turk выдает мне следующую ошибку при вызове CreateHITWithHITType
используя Ruby SDK:
Aws::MTurk::Errors::RequestError: The HIT with ID "3HJ..." already exists. (154...)
Я не понимаю, почему я получаю эту ошибку.
Кажется, я получаю эту ошибку, потому что я звоню CreateHITWithHITType
с уникальным токеном запроса, который я использовал в прошлом - когда я опускаю токен или использую токен, который никогда раньше не использовался, мой код успешно создает HIT. Однако меня это смущает, потому что прошло более 24 часов (ближе к 30 дням) с тех пор, как я последний раз использовал этот уникальный токен запроса, и согласно документации Amazon Mechanical Turk дляCreateHITWithHITType
(и соответствующая документация Ruby SDK), срок действия уникальных токенов запроса истекает через 24 часа:
UniqueRequestToken: уникальный идентификатор для этого запроса. Позволяет повторить вызов при ошибке без создания дубликатов HIT. Это полезно в таких случаях, как тайм-ауты сети, когда неясно, был ли вызов успешным на сервере. Если HIT уже существует в системе из предыдущего вызова с использованием того же UniqueRequestToken, последующие вызовы вернут
AWS.MechanicalTurk.HitAlreadyExists
ошибка с сообщением, содержащим HITId.Тип: Строка
Ограничения: не должны быть длиннее 64 символов. Вы несете ответственность за обеспечение уникальности токена. Срок действия уникального токена истекает через 24 часа. Последующие вызовы с использованием того же UniqueRequestToken, которые были сделаны после 24-часового лимита, могут создать дубликаты HIT.
Документация неверна? Или я что-то не так понимаю в отношении уникальных токенов запроса?