Обновление транзакции PynamoDB вызывает исключение проверки

#transactions #amazon-dynamodb #validationexception #pynamodb

Вопрос:

У меня есть модель, которая выглядит так:

 class Task(BaseModel):

    Meta = pynamodb_table_meta("my-task")

    creator_id = UnicodeAttribute(null=False)
    metadata = JSONAttribute(default={}, null=False)
    status = UnicodeAttribute(default="new", null=False)
    task_id = UnicodeAttribute(hash_key=True)


class BaseModel(Model):
    created_at = UTCDateTimeAttribute()
    updated_at = UTCDateTimeAttribute()
 

Код контроллера:

 try:
            task_to_be_updated = Task(task_id='valid uuid of existing task')
            with TransactWrite(connection=connection) as transaction:
                now = datetime.utcnow()

                transaction.update(
                    task_to_be_updated,
                    actions=[
                        Task.creator_id.set("new uuid")
                        Task.status.set("in_progress"), 
                        Task.updated_at.set(now)
                    ],
                        condition=(Task.status == "new")
                    )
                

        except TransactWriteError as e:
            raise Exception(f"Task error {e.cause_response_code}")

 

Транзакция.обновление всегда завершается ошибкой с исключением ValidationException. Не уверен, в чем проблема. Если есть способ понять, где произошло исключение ValidationException, это было бы здорово, так как все, что я вижу, — это «Исключение проверки ошибок задачи», поэтому я понятия не имею, какое поле вызывает проблемы.

Комментарии:

1. Потенциально пропущенная запятая после Task.creator_id.set("new uuid") ?