Hyperledger Sawtooth Unmet Зависимости Сделки - PullRequest
0 голосов
/ 27 апреля 2020

Заголовки транзакций Sawtooth имеют поля зависимостей и , которые представляют собой массив заголовков транзакций, которые необходимо добавить в бухгалтерскую книгу до обработки этой транзакции . Где хранятся транзакции с неудовлетворенными зависимостями? Хранятся ли они в узле, который первым их получил, или хранятся в каждом узле сети?

1 Ответ

1 голос
/ 27 апреля 2020

Валидатор сохраняет входящие транзакции в очереди ожидания. Валидатор использует транзакцию из очереди ожидания для выполнения. Выполнение транзакции выполняется либо при создании блока, либо при подтверждении блока. Добавление транзакции к блоку инициируется действием механизма согласования.

Транзакция транслируется другим элементам валидатора этой сети по мере их поступления. Он удаляется из очереди, ожидающей обработки, если транзакция оценена, не выполнена или выполнена успешно. Если транзакция успешна, она должна быть либо во время создания блока, либо во время проверки блока. Если созданный блок не может быть зафиксирован из-за согласованного процесса, эти транзакции добавляются обратно в очередь ожидания. В Транзакции как таковой не было ничего плохого, просто она оказалась не частью Блока, который совершен. Другими словами, Транзакция полностью удаляется из очереди ожидания в успешном случае, когда она фиксируется в Блоке.

Когда я говорю, что Транзакция отложена в Валидаторе, конечно, то, что получено, является Пакетом. Проверка зависимостей выполняется Валидатором, когда он считает, что Транзакция добавлена ​​в Блок.

Надеюсь, что это ответ на вопрос. Пожалуйста, добавьте конкретный c вопрос, если вы столкнулись с какой-либо проблемой или хотите узнать подробнее.

...