«Ожидает» — это правда факт на уровне всей сети?
Один кошелёк может пометить транзакцию Dusk как «ожидает», в то время как на другом узле вовсе нет соответствующей записи в mempool.
Это не обязательно является несоответствием. Так происходит из‑за того, как Dusk обрабатывает транзакции до того, как они становятся состоянием реестра.
Каждый peer выполняет собственные проверки допуска и ведёт собственный mempool. Запрос mempoolTxs для Dusk поэтому показывает реальный mempool того узла, к которому обращались, — а не общую для всей сети очередь, разделяемую всеми peers.
Обработка в эпоху Boreas-era Moonlight делает это ещё менее интуитивным. Допустимая транзакция, чей nonce опережает текущую последовательность аккаунта, может быть отложена, пока не придут недостающие nonces. В этот период она находится вне видимого реального mempool узла. Поэтому даже тот узел, который получил транзакцию, может ещё не показывать её в mempoolTxs.
Истечение срока добавляет ещё одно локальное измерение: это политика узла, а не «срок жизни», закодированный прямо в самой транзакции.
Это меняет то, как я бы понимал слово «ожидает». До консенсуса Dusk не предоставляет одну авторитетную глобальную транзакционную «состояниe», которую могут наблюдать все. Разные узлы могут обоснованно хранить различающуюся информацию об одной и той же транзакции.
Следовательно, статус кошелька — это отчёт о точке наблюдения, а не утверждение о том, что сеть уже согласилась с общим промежуточным фактом.
Именно консенсус превращает эти разрозненные локальные представления в общую историю реестра.
@Dusk $DUSK #dusk
Один кошелёк может пометить транзакцию Dusk как «ожидает», в то время как на другом узле вовсе нет соответствующей записи в mempool.
Это не обязательно является несоответствием. Так происходит из‑за того, как Dusk обрабатывает транзакции до того, как они становятся состоянием реестра.
Каждый peer выполняет собственные проверки допуска и ведёт собственный mempool. Запрос mempoolTxs для Dusk поэтому показывает реальный mempool того узла, к которому обращались, — а не общую для всей сети очередь, разделяемую всеми peers.
Обработка в эпоху Boreas-era Moonlight делает это ещё менее интуитивным. Допустимая транзакция, чей nonce опережает текущую последовательность аккаунта, может быть отложена, пока не придут недостающие nonces. В этот период она находится вне видимого реального mempool узла. Поэтому даже тот узел, который получил транзакцию, может ещё не показывать её в mempoolTxs.
Истечение срока добавляет ещё одно локальное измерение: это политика узла, а не «срок жизни», закодированный прямо в самой транзакции.
Это меняет то, как я бы понимал слово «ожидает». До консенсуса Dusk не предоставляет одну авторитетную глобальную транзакционную «состояниe», которую могут наблюдать все. Разные узлы могут обоснованно хранить различающуюся информацию об одной и той же транзакции.
Следовательно, статус кошелька — это отчёт о точке наблюдения, а не утверждение о том, что сеть уже согласилась с общим промежуточным фактом.
Именно консенсус превращает эти разрозненные локальные представления в общую историю реестра.
@Dusk $DUSK #dusk
