Начиная с версии 0.14.0 , мемпул теперь сохраняется при закрытии узла и перезагружается после запуска. Если узел был недоступен менее 20 минут, скажем, пытается ли биткойн-узел восстановить пропущенные транзакции или ждет, пока не увидит их в блоке, прежде чем запрашивать пропущенные транзакции у партнера?
Спасибо!
Bitcoin Core (v0.14+) не пытается активно узнать о пропущенных транзакциях.
Исторически этого не делалось, потому что это излишне и непреднамеренно продлевало бы время жизни транзакций в мемпуле. Это больше не проблема, потому что мемпул ограничен и корректно работает с истечением срока действия и вытеснением.
Однако эффективного протокола для выполнения синхронизации мемпула не существует. Мы могли бы запросить все txid от всех пиров, но это составило бы несколько сотен МБ данных, большая часть которых является избыточной (поскольку она была бы одинаковой для всех пиров). Некоторые исследования были проведены по установленным протоколам согласования, которые эффективно находят различия между мемпулами и просто передают различия. Однако ничто из этого не близко к развертыванию.
Набиль
Г. Максвелл