Удалён RPC-сервис и команды Retesteth (#7833).
Удалена ранняя версия функции TLS для P2P (#7942).
В результате обновления библиотеки Prometheus Java Metrics произошли следующие изменения:
Интерфейс BesuContext в API плагина будет заменён интерфейсом ServiceManager.
Метод MetricSystem::createLabelledGauge устарел и будет удалён в будущем выпуске, его следует заменить на метод MetricSystem::createLabelledSuppliedGauge.
Теперь метод k8s (KUBERNETES) Nat устарел и будет удалён в следующем выпуске.
Параметр --host-whitelist устарел в пользу параметра --host-allowlist с 2020 года и будет удалён в будущем выпуске.
Отказ от функций — для получения дополнительной информации о причинах устаревания этих функций, включая альтернативные варианты, прочитайте этот пост в блоге.
--plugin-continue-on-error
. #7662.--host-whitelist
был объявлен устаревшим в пользу --host-allowlist
с 2020 года и будет удалён в будущем выпуске.--ephemery
для Ephemery Testnet #7563 благодаря @gconnect.debug_traceCall
, чтобы обрабатывать транзакции без указанной цены за газ. #7510.tx-pool-min-score
из файла конфигурации #7623.eth_maxPriorityFeePerGas
#7485. Документация обновлена в журнале изменений #7562:--tx-pool-min-score
для удаления транзакции из пула, когда её оценка ниже указанного значения #7576.engine_getBlobsV1
добавлен в Engine API #7553.eth_gasPrice
, когда не получалось получить значение блока #7482.ClassCastException
, возникающее в DebugMetrics
при обработке вложенных метрических структур. Ранее значения Double
внутри этих структур неправильно приводились к объектам Map
, что приводило к ошибкам. Это обновление позволяет правильно обрабатывать как прямые значения, так и вложенные структуры на одном уровне. Проблема № #7383.evmtool
не учитывал настройку --genesis
, что приводило к неожиданным результатам трассировки #7433.contractSizeLimit
не был связан с ограничениями размера кода #7557.eth_estimateGas
и eth_createAccessList
#7502.Эта версия релиза устарела из-за ошибки CI.
— Уплотнение квитанций будет включено по умолчанию в будущей версии Besu. После этого изменения будет невозможно понизить версию до предыдущей версии Besu.
— --Xbonsai-limit-trie-logs-enabled
устарело, используйте вместо него --bonsai-limit-trie-logs-enabled
.
— --Xbonsai-trie-logs-pruning-window-size
устарело, используйте вместо него --bonsai-trie-logs-pruning-window-size
.
— Подкоманда besu storage x-trie-log
устарела, используйте вместо неё besu storage trie-log
.
— Разрешить настройку адреса контракта запросов на вывод средств через конфигурацию генезиса #7356.
— Удалены давно устаревшие методы perm*whitelist*
#7401.
— Разрешена дополнительная загрузка jemalloc
(если установлен), путём установки переменной среды BESU_USING_JEMALLOC
в значение true/false. Если эта переменная среды не установлена вообще, она будет вести себя так, как если бы она была установлена в true.
— Предоставление возможности настройки окончательного/безопасного блока в плагине api BlockchainService. Эти методы могут использоваться плагинами для установки окончательного/безопасного блока для сети PoA (такой как QBFT, IBFT и Clique) #7382.
— В процессе RPC-сервиса #7395.
— Добавлена поддержка трассировки приватных транзакций с использованием API priv_traceTransaction
#6161.
— Обертывание WorldUpdater в EVMWorldupdater #7434.
— Обновление besu-native до 0.9.4 #7456.
— Правильный entrypoint в Docker evmtool #7430. — Исправление... Обновление до предыдущей версии Besu.
PKI-backed QBFT будет удалён в будущей версии Besu. Другие формы QBFT останутся без изменений.
--Xbonsai-limit-trie-logs-enabled устарел, используйте вместо него --bonsai-limit-trie-logs-enabled.
--Xbonsai-trie-logs-pruning-window-size устарел, используйте вместо него --bonsai-trie-logs-pruning-window-size.
Дополнения и улучшения:
Исправления ошибок:
Ссылки для скачивания: https://github.com/hyperledger/besu/releases/tag/24.6.0 https://github.com/hyperledger/besu/releases/download/24.6.0/besu-24.6.0.tar.gz / sha256 fa86e5c6873718cd568e3326151ce06957a5e7546b52df79a831ea9e39b857ab https://github.com/hyperledger/besu/releases/download/24.6.0/besu-24.6.0.zip / sha256 8b2d3a674cd7ead68b9ca68fea21e46d5ec9b278bbadc73f8c13c6a1e1bc0e4d
Предстоящие критические изменения:
Дополнения и улучшения:
Известные проблемы:
Исправлены ошибки:
Ссылки для скачивания: https://github.com/hyperledger/besu/releases/tag/24.5.2 https://github.com/hyperledger/besu/releases/download/24.5.2/besu-24.5.2.tar.gz / sha256 4049bf48022ae073065b46e27088399dfb22035e9134ed4ac2c86dd8c5b5fbe9 https://github.com/hyperledger/besu/releases/download/24.5.2/besu-24.5.2.zip / sha256 23966b501a69e320e8f8f46a3d103ccca45b53f8fee35a6543bd9a260b5784ee
Критические изменения:
besu --data-path=/path/to/besu/datadir storage revert-metadata v2-to-v1
.pruning-enabled
, pruning-blocks-retained
и pruning-block-confirmations
из вашей конфигурации, и вам следует рассмотреть переход на Bonsai.host()
к предложенному методу authority()
#6878.txpool_besuPendingTransactions
изменение параметра numResults
на необязательный параметр #6708.Blockchain
#6592.blockperiodseconds
переходов к Clique #6596.createemptyblocks
переходы к Clique #6608.minGasPrice
и minPriorityFeePerGas
#6611.TransactionPoolValidatorService
#6636.TransactionSimulationService
#6686.input
, так и поля data
одновременно, если они установлены равными значениями #6702.eth_call
для блоб-транзакций позволяет использовать пустой maxFeePerBlobGas
#6731.tx-pool-blob-price-bump
, чтобы настроить процент повышения цены, необходимый для замены транзакций BLOB (по умолчанию 100%) #6874
rlp decode
для декодирования дополнительных данных IBFT/QBFT в список валидаторов #6895
blocks export
#6675
v
для транзакций типа 1 и типа 2 #6762
https://github.com/hyperledger/besu/releases/tag/24.5.1 https://github.com/hyperledger/besu/releases/download/24.5.1/besu-24.5.1.tar.gz / sha256 77e39b21dbd4186136193fc6e832ddc1225eb5078a5ac980fb754b33ad35d554 https://github.com/hyperledger/besu/releases/download/24.5.1/besu-24.5.1.zip / sha256 13d75b6b22e1303f39fd3eaddf736b24ca150b2bafa7b98fce7c7782e54b213f
--sync-mode=FAST
Несоответствие: БД в «/your-path» — это FOREST (версия 1), но конфигурация ожидает BONSAI (версия 2). Пожалуйста, проверьте вашу конфигурацию.
--data-storage-format=FOREST
_total
ко всем показателям типа счётчика, в результате чего некоторые существующие показатели были переименованы, чтобы иметь этот суффикс. Если вы используете официальную панель мониторинга Besu Grafana (доступна здесь), просто обновите её до последней версии, которая принимает старое и новое название затронутых показателей. Метрики. Если у вас есть собственная информационная панель или вы используете метрики другими способами, вам необходимо вручную обновить её для поддержки нового наименования.Метод trace-filter в JSON-RPC API теперь имеет предел диапазона блоков по умолчанию, равный 1000, который можно настроить с помощью параметра --rpc-max-trace-filter-range (спасибо @alyokaz) [#6446].
Теперь по умолчанию включено получение идентификатора форка от связанных пиров через запрос к Ethereum Node Record (ENR), поэтому было внесено следующее изменение [#5628]:
--Xfilter-on-enr-fork-id
был удалён. Чтобы отключить эту функцию, используйте --filter-on-enr-fork-id=false
.--engine-jwt-enabled
был удалён. Вместо него используйте --engine-jwt-disabled
[#6491].--Xp2p-peer-lower-bound
устарел. [#6501]--Xbonsai-limit-trie-logs-enabled
. Вместо этого нужно использовать --bonsai-limit-trie-logs-enabled
, и этот лимит будет включён по умолчанию.
--bonsai-historical-block-limit
< 512), вам нужно явно отключить его с помощью --bonsai-limit-trie-logs-enabled=false
или увеличить лимит. [#6561].OperationTracer.tracePrepareTransaction
, где счётчик отправителя ещё не был изменён [#6453].--Xbonsai-limit-trie-logs-enabled
, которая по умолчанию будет сохранять только последние 512 журналов дерева Меркла, экономя около 3 ГБ в неделю при росте базы данных [#5390].besu storage x-trie-log prune
, которая удалит все избыточные журналы дерева Меркла, кроме последних 512 [#6303].pragueTime
в файл генезиса для разработки ветки Prague [#6473].shanghaiTime
и смарт-контрактов Shanghai EVM в цепочках QBFT/IBFT [#6353].--Xbonsai-code-using-code-hash-enabled
для хранения кода Bonsai по хеш-коду кода [#6505].storage rocksdb usage
подкоманда [#6540].storage rocksdb x-stats
подкоманду [#6540].block-txs-selection-max-time
или poa-block-txs-selection-max-time
.Устаревания.
Дополнения и улучшения:
qbft_getValidatorsByBlockNumber
.Исправления ошибок:
eth_estimateGas
.Ссылки для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.1/besu-24.1.1.zip / sha256 e23c5b790180756964a70dcdd575ee2ed2c2efa79af00bce956d23bd2f7dc67c https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.1/besu-24.1.1.tar.gz / sha256 4b0ddd5a25be2df5d2324bff935785eb63e4e3a5f421614ea690bacb5b9cb344
Errata. Обратите внимание, что из-за гонки CI с заданием выпуска исходные опубликованные версии 24.1.1 были перезаписаны артефактами, созданными из тех же источников, но отличающимися встроенными временными метками. Исходные SHA указаны здесь, но устарели:
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.1/besu-24.1.1.zip / sha256 b6b64f939e0bb4937ce90fc647e0a7073ce3e359c10352b502059955070a60c6
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.1/besu-24.1.1.tar.gz / sha256 cfcae04c30769bf338b0740ac65870f9346d3469931bb46cdba3b2f65d311e7a
Критические изменения.
Устаревшие функции:
Дополнения и улучшения:
--tx-pool=sequenced
. Поддерживает те же опции, что и пул legacy
(#6274).Установите блок активации основной сети Ethereum Classic для обновления сети Spiral (#6267).
Добавьте пользовательское имя файла генезиса в обзор конфигурации, если оно указано (#6297).
Обновите плагины Gradle и замените неподдерживаемый плагин лицензии Gradle активно поддерживаемым отчётом о лицензии Gradle (#6275).
Оптимизируйте файлы WAL RocksDB, что позволяет быстрее перезапускать и более линейно использовать дисковое пространство (#6328).
Создайте кэш отправителей по хэшу транзакции (#6375).
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.0/besu-24.1.0.zip / sha256 d36c8aeef70f0a516d4c26d3bc696c3e2a671e515c9e6e9475a31fe759e39f64
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/24.1.0/besu-24.1.0.tar.gz / sha256 602b04c0729a7b17361d1f0b39f4ce6a2ebe47932165add666560fe594d9ca99
Это исправление дефекта самоуничтожения, произошедшего в основной сети в блоке 18947893.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.3-hotfix/besu-23.10.3-hotfix.zip / sha256 1c37762909858a40eca749fb85b77fb4d1e918f247aff56d518144828bd85378
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.3-hotfix/besu-23.10.3-hotfix.tar.gz / sha256 8e38e9fd0c16e049aa324effc96f9ec31dc06e82ea4995e9dd75d571394667af
tx-pool-min-gas-price
для установки нижнего предела при приёме транзакций в пул (#6098).rpc-gas-cap
, чтобы пользователи могли устанавливать лимит газа для методов RPC, используемых для имитации транзакций (#6156).address
при возврате сущности Account
в GraphQL в случае недостижимого состояния мира (#6198).rocksdb usage
к подкоманде storage
, чтобы позволить пользователям и разработчикам проверять использование семейств столбцов (#6185).logIndex
в методе JSON RPC eth_getTransactionReceipt
. ### Скачать ссылки
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.3/besu-23.10.3.zip / sha256 da7ef8a6ceb88d3e327cacddcdb32218d1750b464c14165a74068f6dc6e0871ahttps://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.3/besu-23.10.3.tar.gz / sha256 73c834cf32c7bbe255d7d8cc7ca5d1eb0df8430b9114935c8dcf3a675b2acbc2
— Извлечение из пула устаревших транзакций в устаревшем пуле транзакций теперь отдаёт предпочтение сохранению самых старых транзакций (более вероятно удаление более высоких номеров, менее вероятно появление пробелов в номерах) #6106 и #6146.
— Обновление сети Spiral в Ethereum Classic #6078.
— Добавление метода для чтения из экземпляра Memory без изменения его внутреннего состояния #6073.
— Принятие полей ввода и данных для полезной нагрузки методов RPC, связанных с транзакциями #6094.
— Добавить API для установки и получения минимальной цены на газ, которую должна заплатить транзакция, чтобы быть выбранной во время создания блока #6097.
— TraceService: возврат результатов для транзакций в блоке #6086.
— Новая опция --min-priority-fee
, которая устанавливает минимальную приоритетную плату за транзакцию, необходимую для её выбора в блок. #6080 #6083.
— Реализация новых методов RPC miner_setMinPriorityFee
и miner_getMinPriorityFee
#6080.
— Опция конфигурации клики createemptyblocks
для предотвращения создания пустых блоков #6082.
— Обновление эталонных тестов EVM до версии v13 (Cancun) #6114.
— Добавьте yParity
в GraphQL и JSON-RPC для соответствующих запросов. 6119.
— Заставить замену цены транзакции равняться нулю, когда настроен нулевой базовый уровень цен на газ или --min-gas-price
установлен равным 0. Это позволяет упростить замену транзакций в сетях, где нет цены на газ. #6079.
— Введение возможности ограничить время, затрачиваемое на выбор ожидающих транзакций во время создания блоков, используя новую экспериментальную опцию Xblock-txs-selection-max-time
в сетях PoS и PoW (по умолчанию установлено значение 5000 мс) или Xpoa-block-txs-selection-max-time
в сетях PoA (по умолчанию 75% от минимального времени блока) #6044.
— Удалить LowestInvalidNonceCache из устаревшего пула транзакций, чтобы сделать его более дружественным к частным сетям #6148.
— Оптимизация: удалить leftPad при захвате стека перед и после выполнения кадра #6102.
— Обновите netty для устранения CVE-2023-44487, CVE-2023-34462 #6100. — Обновите grpc для устранения CVE-2023-32731, CVE-2023-33953, CVE-2023-44487, CVE-2023-4785 #6100. — Исправьте расчёт газа для BLOB в эталонных тестах #6107. — Ограничьте объём памяти, используемой при обработке недействительных блоков #6138.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.2/besu-23.10.2.zip / sha256: 597ab71898d379180106baf24878239ed49acefea5772344fd359b0ff13fe19f
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.2/besu-23.10.2.tar.gz / sha256: 255818a5c6067a38aa8b565d8f32a49a172a7536a1d370673bbb75f548263c2c
— Новая опция --tx-pool-priority-senders
для указания списка отправителей, что приводит к приоритезации любых транзакций, отправленных этими отправителями из любого источника. Бесу 23.10.1
Кэш последних n блоков с использованием нового флага Бесу --cache-last-blocks=n
.
Оптимизация производительности RPC метода eth_feeHistory
.
Ведение журнала сводки плагинов на уровне информации как часть обзора конфигурации.
Улучшения многоуровневой памяти пула транзакций.
Обновление Bouncy Castle до версии 1.76 и принудительное использование варианта jdk18on
.
Добавление поддержки GraphQL для новых полей в Cancun.
Добавление новых параметров конфигурации в EVM Fluent APIs.
Флаг --tx-pool-disable-locals
устарел, его следует заменить на --tx-pool-no-local-priority
, семантических изменений нет, только переименование.
Исправление регрессии с инструментом t8n.
Исправление EOF и EIP-4788 регрессий в эталонных тестах.
Ссылки для скачивания
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.1/besu-23.10.1.tar.gz / sha256: e27645f345583f3ee447e5418302382c6f8335d2da8707bdd20033aabd86ce4c
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.1/besu-23.10.1.zip / sha256: fb173acb93c72fbb74a6542051691ca2d3d5f54ea2f51026467a512f3a22106b
В этом выпуске ранее экспериментальный многоуровневый пул txpool отмечен как стабильный и включён по умолчанию. Пожалуйста, ознакомьтесь со следующими инструкциями, если вы привыкли настраивать поведение txpool, в противном случае вы можете просто использовать настройки по умолчанию и наслаждаться улучшенной производительностью нового txpool.
Если вы не указываете никаких параметров txpool, то можете пропустить этот раздел. Если вы настроили txpool с помощью одного из следующих параметров: tx-pool-retention-hours
, tx-pool-limit-by-account-percentage
или tx-pool-max-size
, то вам необходимо обновить конфигурацию, как описано ниже:
— tx-pool-retention-hours
: просто удалите его, так как он не применим в многоуровневом txpool; старые транзакции в конечном итоге истекут, когда кэш памяти будет заполнен.
— tx-pool-limit-by-account-percentage
: замените его на tx-pool-max-future-by-sender
, который определяет максимальное количество последовательных транзакций одного отправителя, хранящихся в txpool; по умолчанию это 200.
— tx-pool-max-size
: многоуровневый txpool не ограничен максимальным количеством транзакций, а оценивается по размеру занимаемой памяти, поэтому вам нужно удалить эту опцию и настроить максимальный объём памяти с помощью новой опции tx-pool-layer-max-capacity
, как описано ниже.
Вы всё ещё можете отказаться от многоуровневого txpool, установив tx-pool=legacy
в файле конфигурации или через аргумент cli, но имейте в виду, что реализация Legacy скоро будет устаревшей, поэтому начните тестировать новую реализацию.
По умолчанию txpool настроен для использования в основной сети, но если вы используете частные сети или хотите настроить его иначе, вот новые параметры:
— tx-pool-max-future-by-sender
: укажите максимальное количество последовательных транзакций одного отправителя, которые будут храниться в txpool; по умолчанию — 200; увеличьте его, чтобы позволить одному отправителю разместить больше транзакций в одном блоке. Для частных сетей его можно безопасно установить в сотни или тысячи, если вы хотите сохранить будущие транзакции (с большими пробелами в номерах) в пуле.
— tx-pool-layer-max-capacity
: установите максимальный объём... Память в байтах, которую может занимать один слой с ограниченным объёмом памяти, по умолчанию составляет 12,5 МБ.
Следует учитывать, что существует два слоя с ограниченным объёмом памяти, поэтому ожидаемое потребление памяти вдвое превышает значение, указанное этим параметром, то есть по умолчанию — 25 МБ. Увеличьте это значение, если у вас есть свободная оперативная память и скорость выселения для вашей сети высока.
— Удалена поддержка сети Kotti (ETC) #5816.
— Реализация многоуровневого пула транзакций теперь стабильна и включена по умолчанию, поэтому были внесены следующие изменения в экспериментальные параметры [#5772]:
— --Xlayered-tx-pool
больше не используется, для выбора реализации используйте новый параметр --tx-pool
со значениями layered
(по умолчанию) или legacy
.
— Параметры --Xlayered-tx-pool-layer-max-capacity
, --Xlayered-tx-pool-max-prioritized
и --Xlayered-tx-pool-max-future-by-sender
просто теряют префикс Xlayered-
, но сохраняют то же поведение.
— Добавлен доступ к неизменяемому представлению мира для запуска/завершения транзакционных хуков в API трассировки [#5836].
— Многоуровневая реализация пула транзакций теперь стабильна и включена по умолчанию. Если вы всё ещё хотите использовать устаревшую реализацию, используйте --tx-pool=legacy
. По умолчанию новый пул транзакций ограничен использованием 25 МБ памяти, этот лимит можно увеличить с помощью параметров --layered-tx-pool-layer-max-capacity
[#5772].
— Настройте G1GC для уменьшения объёма памяти Besu, и новые сценарии запуска besu-untuned
для работы без каких-либо конкретных флагов G1GC [#5879].
— Сократите время отклика engine_forkchoiceUpdatedV?
, асинхронно обрабатывая события добавления блоков в пул транзакций [#5909].
— Не создавайте игнорируемое хранилище при отмене команды storage-variables
[#5830].
— Исправьте ошибки дублирования ключей в EthScheduler-Transactions [#5857].
— Не помещайте управляющие символы, экранированные или иным образом, в трассировку стека t8n [#5910].
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.0/besu-23.10.0.tar.gz / sha256: 3c75f3792bfdb0892705b378f0b8bfc14ef6cecf1d8afe711d8d8687ed6687cf
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.10.0/besu-23.10.0.zip / sha256: d5dafff4c3cbf104bf75b34a9f108dcdd7b08d2759de75ec65cd997f38f52866
— Обновите конфигурацию Holešky для повторного запуска [#5890].
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.7.3/besu-23.7.3.tar.gz / sha256: c12ca6a9861557e0bf8f27076f8c8afcce6f1564687e5f02bfdc96c2b18846ff
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.7.3/besu-23.7.3.zip / sha256: 136596454f647c706130e3e2983bdbb4a1cbfaf2bbf6e999466754f9213c11f6
— Добавьте новые методы в OperationTracer
для захвата контекстов входа/выхода [#5756].
— Добавьте Holešky в качестве предопределённого имени сети [#5797].
— Добавляйте ABI-декодированный повод возврата к ответам eth_call
и eth_estimateGas
[#5705].
— Добавьте недостающие методы в интерфейс Transaction
[#5732].
— Добавьте подкоманду benchmark
в... evmtool
JSON output теперь по умолчанию компактный. Это можно переопределить с помощью нового параметра CLI --json-pretty-print-enabled
. (#5766)
Новый метод JSON-RPC eth_getBlockReceipts
для получения всех квитанций транзакций для блока за один вызов. (#5771)
Добавьте новые методы в OperationTracer
для захвата контекстов входа/выхода. (#5756)
Функции разрешения смарт-контрактов работают с лондонским форком. (#5727)
Добавить тип в PendingTransactionDetail, исправить eth_subscribe. (#5729)
Режим «run» EvmTool не отражал контракты, созданные в транзакции. (#5755)
Исправление проблемы с синхронизацией снимков с лесом на этапе восстановления. (#5776)
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.7.2/besu-23.7.2.tar.gz / sha256: f74b32c1a343cbad90a88aa59276b4c5eefea4643ee542aba2bbf898f85ae242
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.7.2/besu-23.7.2.zip / sha256: a233c83591fc277e3d1530c84bb5ea896abad717d796b5e3b856c79199132b75
Удалён устаревший интерфейс разрешений GoQuorum. (#5607)
Поддержка версии 0 базы данных удалена, поскольку она больше не используется активными узлами. (#5698)
Теперь бинарные файлы запуска evmtool
поставляются как часть стандартного дистрибутива. (#5701)
EvmTool теперь выполняет тесты execution-spec-tests
через t8n
и b11r
. Дополнительные инструкции см. в файле README в EvmTool.
Улучшено управление жизненным циклом пула транзакций. (#5634)
Добавлены точки расширения в AbstractCreateOperation для библиотек EVM, чтобы реагировать на создание контрактов. (#5656)
Обновление до Tuweni 2.4.2. (#5684)
Разделение поля данных от Enum JsonRpcError путём создания нового перечисления RpcErrorType. (#5629)
Обновление Bouncycastle до версии 1.75. (#5675)
Расширение OperationTracer новыми методами. (#5662)
Eip 6780 selfdestruct. (#5430)
Добавление нового debug_getRawTransaction в DEBUG engine. (#5635)
Использование конфигурации узла для определения, разрешены ли URL-адреса enode в вызовах admin_addPeer
и admin_removePeer
. (#5584)
Согласование реализации Eth/68 NewPooledTransactionHashes с другими клиентами, использование беззнакового int для кодирования размера. (#5640)
Сбой при запуске при включении многоуровневого txpool до завершения начальной синхронизации. (#5636)
Удаление предупреждений об опциях майнера, если изменение не использует алгоритм консенсуса Ethash. (#5669)
Исправлена утечка ссылок на ожидающие транзакции. (#5693)
Решена проблема с производительностью, наблюдаемая при тестировании импорта. (#5734)
Обновлены собственные библиотеки, которые имеют имена модулей, совместимые с JPMS. (#5749)
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/23.7.1/besu-23.7.1.tar.gz / sha256: 85dce66c2dbd21b4e5d3310770434dd373018a046b78d5037f6d4955256793cd В запросе скорее всего текст технической направленности из области разработки и тестирования программного обеспечения. Основной язык текста запроса — английский.
debug_getRawReceipts
.min-block-occupancy-ratio
option when on PoS networks, since in some cases, it prevents to have full blocks even if enough transactions are present.Bug Fixes
Download Links https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.4.1/besu-23.4.1.tar.gz / sha256: 49d3a7a069cae307497093d834f873ce7804a46dd59207d5e8321459532d318e https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.4.1/besu-23.4.1.zip / sha256: 1d82ed83a816968aa9366d9310b275ca6438100f5d3eb1ec03d3474b2a5f5e76
Breaking Changes
evmtool
(an offline EVM executor tool principally used for reference tests), the --prestate
and --genesis
options no longer parse genesis files containing IBFT, QBFT, and Clique network definitions. The same genesis files will work with those json entries removed.--ethstats
, if the port is not specified in the URI, it will default to 443 and 80 for ssl and non-ssl connections respectively instead of 3000.tx-pool-future-max-by-account
option, see instead: tx-pool-limit-by-account-percentage
.Additions and Improvements
./gradlew nativeCompile
. The binary will be located in ethereum/evmtool/build/native/nativeCompile
.--ethstats-cacert
to specify root CA of ethstats server (useful for non-production environments).Это обновление настоятельно рекомендуется для всех, кто использует Nimbus с Besu. Из-за способа, которым Nimbus отправляет данные запроса, это может привести к пропущенному предложению блока при определённых обстоятельствах.
Исправления ошибок:
Ссылки для скачивания: https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.3/besu-23.1.3.tar.gz / sha256: 36898932a7535c4d126c1980443b33c9a4971f9354112992a18ee134c1777aa3
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.3/besu-23.1.3.zip / sha256: adb3b17e45217f86a56f07f09faba2e5d8a0eb8a585ad5307696d6cc58ee2f73
23.1.2
Это обновление совместимо с основной сетью Shanghai/Capella и рекомендуется всем пользователям основной сети.
Изменения:
--rpc-max-logs-range
#5209.Исправление ошибок:
Ссылки для скачивания: https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.2/besu-23.1.2.tar.gz / sha256: 3d3a709a3aab993a0801b412a4719d74e319f942ddc13fb0f30b3c4a54d12538
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.2/besu-23.1.2.zip / sha256: 2a9ff091cb4349fc23625a52089400bb6529a831eb22d15d0221cb27039ab203
23.1.1
Это обновление требуется для обновления Goerli Shanghai/Capella. Рекомендуется для всех пользователей Mainnet. Если вы используете Besu на Goerli, обновитесь до версии 23.1.1. Если ранее вы использовали версию 23.1.1-RC1, протестируйте версию 23.1.1 на Goerli.
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.1/besu-23.1.1.tar.gz / sha256: 11c3e5cdbc06df16a690e7ee9f98eefa46848f9fa280824b6e4c896d88f6b975 https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.1/besu-23.1.1.zip / sha256: afcf852f193adb8e82d187aa4f02e4669f12cc680270624d37101b94cf37adec
Это обновление не рекомендуется для пользователей основной сети.
Besu 23.1.1-RC1 — это обязательное обновление для пользователей Sepolia.
Запуск хардфорка Sepolia Shanghai запланирован на: вторник, 28 февраля 2023 года, 04:04:48 UTC.
Этот релиз включает всё из 23.1.0 и дополнительно следующее:
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.1-RC1/besu-23.1.1-RC1.tar.gz / sha256: 82cff41f3eace02006b0e670605848e0e77e045892f8fa9aad66cbd84a88221e https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.1-RC1/besu-23.1.1-RC1.zip / sha256: 469c8d6a8ca9d78ee111ff1128d00bf3bcddacbf5b800ef6047717a2da0cc21d
Besu 23.1.0 рекомендуется для обновления пользователям основной сети. Благодарим вас за терпение, пока мы работали над этим квартальным выпуском.
Это довольно большой выпуск с некоторыми изменениями, поэтому перед обновлением любых экземпляров Besu внимательно прочитайте эти примечания. Мы включаем переход на Java 17 LTS. Чтобы собрать и запустить Besu, убедитесь, что у вас есть Java 17 на хост-машине. Кроме того, существует множество изменений соответствия спецификациям, которые изменяют существующие форматы, поэтому проверьте конкретные обновления RPC. Наконец, этот выпуск формализует уведомление об устаревании режимов конфиденциальности GoQuorum и IBFT1.0 в Besu. Они будут удалены в серии 23.4, если не указано иное. Изменения в Besu 23.1.0
В области разработки и тестирования программного обеспечения произошли изменения, связанные с Besu.
Примечание: версия 23.1.0 не готова к использованию в Shanghai. Если вы планируете тестировать Besu на долгоживущих тестовых сетях, таких как Zhejiang, следуйте инструкциям здесь. Скоро мы поделимся дополнительной информацией о наших официальных релизах для Shanghai.
Критические изменения:
Дополнения и улучшения:
Добавить поддержку временных меток форков, включая форки shanghaiTime и cancunTime [#4743].
Оптимизация: запоминать размер транзакции и хэш одновременно [#4812].
Добавить функцию обрезки данных цепочки с тремя экспериментальными параметрами командной строки: --Xchain-pruning-enabled
, --Xchain-pruning-blocks-retained
и --Xchain-pruning-frequency
[#4686].
Обратите внимание, что обрезка цепочки скрыта и по умолчанию отключена. Как только вы решите включить обрезку цепочки, в базу данных будет добавлено новое семейство столбцов, и вы не сможете вернуться к предыдущей версии Besu.
Исправления ошибок
Устранение последствий устаревшего хранилища кода bonsai, приводящего к проблемам с ролловером журнала при воссоздании контракта [#4906].
Обеспечение подписки на последнее кэшированное многоуровневое состояние мира для хранилища, решение проблемы с вызовами RPC с использованием параметра «latest» [#5076].
Исправление ошибок сегментации при усечении состояния мира, запуске синхронизации моментальных снимков [#4786].
Решение проблемы несоответствия состояний мира при неудачном обновлении форка выбора [#4862].
Ссылки для скачивания
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.0/besu-23.1.0.tar.gz / sha256: 9081da04d47c3ff0a6ecc2256d353c7a02212f9b46f2c867a9365e18026c3a6e
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.0/besu-23.1.0.zip / sha256: e037f5c8f976150af40403311d1c81018f4c3dfbef0ad33324d8c3e708d1fdca
Изменения, нарушающие работу
— Из списка командной строки CLI удалены конфигурации по умолчанию для устаревших сетей Ropsten, Kiln, Shandong и Astor. В настоящее время доступ к этим сетям возможен, но потребуется предоставленная пользователем конфигурация генезиса [#4869].
Дополнения и улучшения
— Повышение производительности SLOAD и SSTORE за счёт кэширования пустых слотов [#4874].
— Методы RPC, которые ищут блок по хэшу, теперь будут возвращать ответ об ошибке, если блок не найден [#4582].
— Добавлена поддержка строк safe
и finalized
для методов RPC с использованием параметра defaultBlock [#4902].
Исправления ошибок
Ссылки для скачивания
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.0-RC1/besu-23.1.0-RC1.tar.gz / sha256: 30906891e528b3b4e3ce8e2313550a1da066b31ea10b05456dd0ad026792b46d
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/23.1.0-RC1/besu-23.1.0-RC1.zip / sha256: 9067d1929079ae4a7c165e6f1e2bae08834939ed191f976d26544dc93352c306
Изменения, нарушающие работу
— Совместимость с GoQuorum в плане конфиденциальности устарела и будет удалена в версии 23.4.
— IBFT 1.0 устарел и будет удалён в версии 23.4.
— Оптимизация времени выполнения операции SSTORE (запоминание текущего и исходного значения) [#4836].
Дополнения и улучшения
— Опция ведения журнала состояния после выполнения в EVM Tool [#4709].
— Доступ к списку транзакций для объекта вызова [#4802].
— Поддержка временных меток форков, включая shanghaiTime и cancunTime [#4743].
— Оптимизация: запоминание размера транзакции и хэша одновременно [#4812].
— Функция обрезки данных цепочки с тремя экспериментальными параметрами командной строки: --Xchain-pruning-enabled
, --Xchain-pruning-blocks-retained
и --Xchain-pruning-frequency
[#4686].
Обратите внимание, что функция обрезки цепочки скрыта и отключена по умолчанию. После включения функции обрезки цепочки в базе данных появится новое семейство столбцов и возврат к предыдущей версии Besu станет невозможен.
Исправления ошибок
— Исправление ошибок сегментации при усечении состояния мира. Снап-синхронизация начинается
Исправление несоответствия worldstate при неудачном forkchoiceUpdate
--rpc-max-logs-range
, позволяющая ограничить количество блоков, запрашиваемых через eth_getLogs
RPC API. Значение по умолчанию: 1000.openjdk-11
и openjdk-latest
.--Xeth-capability-max
и --Xeth-capability-min
для указания диапазона возможностей, поддерживаемых протоколом Eth.https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.3/besu-22.10.3.tar.gz / sha256: 7213f9445a84a196e94ae1877c6fdb1e51d37bfb19615da02ef5121d4f40e38c https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.3/besu-22.10.3.zip / sha256: 0bf6bc98e01b0c1045f1b7d841a390c575bc5203c2a4e543d922fbc1ea0d3d5d
Это релиз с исправлением ошибок, который решает проблему состояния гонки, приводящую к сбоям, представленную в выпуске 22.10.1.
https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.2/besu-22.10.2.tar.gz / sha256: cdb36141e3cba6379d35016e0a2de2edba579d4786124b5f7257b1e4a68867a2 https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.2/besu-22.10.2.zip / sha256: 4c9208f684762670cb4f2c6ebfb6930e05e339a7c3c586fe8caa9f26462830aa
publicKey
и raw
удалены из объекта результата RPC API Transaction
.debug_setHead
и debug_replayBlock
.type
в объект Transaction receipt (eth_getTransactionReceipt) #4505.https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.1/besu-22.10.1.tar.gz / sha256: b6757b9fc69b782cdabb95b1e784d31b1effcc2e25c6b198b2f9d6b3786c7a8a. https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.10.1/besu-22.10.1.zip / sha256: 0dbee534620c7cc0fac0596e6df0c7f8a74be9df9cecd9d4f1407016f30fb9a1.
UInt256
на Bytes32
#4562.bytes32
, поддерживающий только шифровальщики с открытыми ключами такой длины (например, стандартный NaCl).--tx-pool-hashes-max-size
(устаревшая с версии 22.1.3) #4518.--Xmerge-support
(устаревшая с версии 22.4.2) #4518.OperationTracer
для улучшения работы.
traceExecution
заменён на методы tracePreExecution
и tracePostExecution
, вызываемые непосредственно перед и сразу после выполнения операции.DebugOperationTracer
и StandardJsonTracer
.--Xbonsai-use-snapshots=true
) #4351.Настройте пулы потоков EthScheduler, чтобы избежать повторного создания слишком большого количества потоков (#4529).
Добавьте интерфейсы моментальных снимков в RocksDB на основе состояний мира и плагин-API (#4409).
Постоянно пытайтесь создавать лучшие предложения блоков до истечения времени ожидания или вызова GetPayload (#4516).
Обновите версию базы данных RocksDB с 6.29.5 до 7.6.0 (#4517).
Избегайте подключения к себе при использовании статических узлов (#4521).
Производительность EVM увеличилась на 20–100 % в зависимости от особенностей контракта (#4540).
Улучшите производительность метода calculateRootHash во время обработки блоков (#4568).
Исправления ошибок:
Ссылки для скачивания:
Дополнения и улучшения:
Исправлены ошибки.
Ссылки для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.10.0-RC1/besu-22.10.0-RC1.zip / sha256: 16fd47533aa2986491143e5f4a052c0aa4866ebfa415abbf3ca868e4fbeac6ce https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.10.0-RC1/besu-22.10.0-RC1.tar.gz / sha256: 48fd3480e4380580ed9187302be987e9eca2b445935ec6a509e7269898d8a4a8
Добавления и улучшения:
Исправлены ошибки:
Ссылки для скачивания: https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.7.7/besu-22.7.7.zip / sha256: 79b2b1518605603d8268f873f2576617ca8340d89c045e0eda6896f40defea0d https://hyperledger.jfrog.io/hyperledger/besu-binaries/besu/22.7.7/besu-22.7.7.tar.gz / sha256: 161c52ba9be8508767e80dbce796b4ad2cc5b649f7ed15387c6359d1e15753f6
Выпуск исправления ошибок. Из текста запроса:
of the 22.7.x series to address #4495 which could result in failed block proposals on merge networks.
Перевод:
из серии 22.7.х для решения проблемы #4495, которая может привести к неудачным предложениям блоков в объединённых сетях.
В запросе есть и другие фрагменты текста, но они не содержат полезной информации для перевода. Скачать
Besu 22.7.2 — рекомендуемый релиз для пользователей Merge и Mainnet. Besu 22.7.1 остаётся готовым к слиянию. Этот релиз обеспечивает дополнительную надёжность перед слиянием с некоторыми исправлениями и улучшениями в синхронизации, пиринге и логировании.
Дополнения и улучшения:
Исправления ошибок:
Скачать:
Besu 22.7.1 — релиз, готовый к слиянию. Необходимое обновление для The Merge в основной сети Ethereum!
Дополнения и улучшения:
--Xp2p-peer-lower-bound
(#4200);Исправления ошибок:
Скачать:
Besu 22.7.0
Дополнения и улучшения:
предупреждение об устаревании Ropsten, Rinkeby, Kiln. ### Исправления ошибок
Исправлена предыдущая известная проблема #3890 из RC3, требующая перезапуска после слияния для продолжения корректной обработки транзакций.
Прекращение создания трассировок стека, когда ответ на запрос «получить заголовки» содержит только заголовок начального диапазона (#4189).
Обновление Spotless до версии 6.8.0 (#4195).
Обновление Gradle до версии 7.5 (#4196).
Ссылки для скачивания:
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC2/besu-22.7.0-RC2.tar.gz / sha256: befe15b893820c9c6451a74fd87b41f555ff28561494b3bebadd5da5c7ce25d3
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC2/besu-22.7.0-RC2.zip / sha256: d56c340f5982b882fbecca2697ca72a5bbefe0e978d2d4504211f012e2242a81
Ссылки для скачивания:
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC1/besu-22.7.0-RC1.tar.gz / sha256: 60ad8b53402beb62c24ad791799d9cfe444623a58f6f6cf1d0728459cb641e63
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC1/besu-22.7.0-RC1.zip / sha256: 7acfb3a73382bf70f6337e83cb7e9e472b4e5a9da88c5ed2fbd9e82fcf2046dc
--sync-mode="X_CHECKPOINT"
.Исправления ошибок
Ссылки для скачивания
22.1.3
Изменения, нарушающие работу
Устаревшие функции
Дополнения и улучшения
Ссылки для скачивания
22.1.2
Дополнения и улучшения
Исправление ошибок
Ссылки для скачивания
22.1.1
Дополнения и улучшения
latest finalized block #2913
protected volatile Hash hash;
which was used for private transactions #3110
Перевод текста на русский язык:
Последний завершённый блок — #2913. — Добавить PostMergeContext и прекратить синхронизацию после перехода на PoS — #3453. — Добавить правила валидации заголовков для блоков The Merge — #3454. — Добавить основные компоненты: конструктор контроллеров, планировщик протоколов, координатор, создатель и обработчик блоков — #3461. — Конкретный RPC-интерфейс для выполнения — #2914, #3350. QBFT-алгоритм консенсуса готов к работе.
Ссылки для скачивания: — https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.1/besu-22.1.1.zip / SHA256 cfff79e19e5f9a184d0b62886990698b77d019a0745ea63b5f9373870518173e; — https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.1/besu-22.1.1.tar.gz / SHA256 51cc9d35215f977ac7338e5c611c60f225fd6a8c1c26f188e661624a039e83f3.
Версия 22.1.0:
— Плагин API: метод BlockHeader.getBaseFee теперь возвращает необязательный Wei вместо необязательного Long — #3065. — Удалена устаревшая переменная hash protected volatile Hash hash;, которая использовалась для приватных транзакций — #3110. Перевод текста на русский язык:
Переменные, как описано в стандарте NO_COLOR (https://no-color.org/) #3085
Добавить RPC метод privx_findFlexiblePrivacyGroup
, privx_findOnchainPrivacyGroup
будет удалён в будущем релизе #3075.
Теперь отображается недопустимое значение, когда --bootnodes
не может проанализировать элемент, чтобы было легче определить, какой параметр недопустим.
Добавление двух новых опций для возможности указать желаемую версию протокола TLS и наборы шифров Java #3105.
Реализует EIP-4399, чтобы перепрофилировать код операции DIFFICULTY после слияния в качестве источника энтропии из цепочки маяков #3081.
Этот релиз не рекомендуется для использования в производстве.
Добавьте параметры обнаружения в файл генезиса #2944.
Добавьте подкоманду validate-config для выполнения базовой проверки синтаксиса конфигурации TOML #2994.
Обновлённые узлы Sepolia #3034, #3035.
Уменьшите вычисления сдвига до сдвигов, которые могут иметь фактический результат #3039.
Демон DNS Discovery не был запущен #3033.
Этот выпуск не рекомендуется для производственного использования.
Добавьте сценарии автозаполнения CLI. #2854.
Поддержка PKCS11 хранилища ключей при создании блока PKI. #2865.
Оптимизация памяти EVM для операций MLOAD. #2917.
Обновите CircleCI OpenJDK docker image до версии 11.0.12. #2928.
Обновление JDK 11 до последней версии в образах Besu Docker. #2925.
Добавьте конфигурации тестовой сети Sepolia proof-of-work. #2920.
Разрешить настройку периода блока для IBFT2 и QBFT с использованием переходов. #2902.
Поддерживать двоичные сообщения (0x02) для веб-сокета. #2980.
Не изменяйте баланс отправителя, а установите плату за газ равной нулю при моделировании транзакции без принудительного применения проверок баланса. #2454.
Убедитесь, что блок генезиса имеет базовую плату по умолчанию, если лондон находится в блоке 0. #2920.
Исправляет условие выхода для загрузки BonsaiPersistedWorldState для родственного блока последнего сохранённого. #2967.
Этот релиз не рекомендуется для производства.
EVM была выделена в отдельный модуль, подходящий для включения в качестве библиотеки. #2790.
Низкоуровневые улучшения производительности меняют наихудшую производительность EVM вдвое. #2796.
Перенос ExceptionalHaltReason из перечисления в интерфейс, позволяющий нижестоящим пользователям EVM добавлять новые исключительные причины остановки. #2810.
уменьшает потребность в анализе JUMPDEST через кэширование. #2607, #2821.
Добавляет поддержку пользовательского файла закрытого ключа для... Публичный экспорт ключей и команды публичного адреса экспорта ключей
Добавить сценарии автозаполнения в CLI.
Поддерживать PKCS11 keystore при создании PKI блока.
Поддержка ArrowGlacier hardfork.
Исправления ошибок
Разрешить указывать файл TOML с помощью переменной среды BESU_CONFIG_FILE.
Исправить ошибку, из-за которой частные контракты не могли вызывать публичные контракты, которые вызывали публичные контракты.
Улучшить условие выхода для загрузки BonsaiPersistedWorldState для родственного блока последнего сохранённого.
Устранить регрессию в bonsai getMutable, влияющую на быструю синхронизацию.
Регрессия в RC1, связанная с LogOperation и перезаписью памяти фрейма.
Позволить eth_call и eth_estimateGas принимать адрес контракта в качестве отправителя.
Ранний доступ к функциям
Включить плагины для предоставления пользовательских методов JSON-RPC / WebSocket.
Ссылка для скачивания Этот релиз не рекомендуется для использования в производстве. SHA256: 71374454753c2ee595f4f34dc6913f731818d50150accbc98088aace313c6935.
21.10.0-RC4
Дополнения и улучшения
Исправление ошибок Улучшение условия выхода для загрузки BonsaiPersistedWorldState для родственного блока последнего сохранённого. Устранение регрессии в bonsai getMutable, влияющей на быструю синхронизацию.
Ранний доступ к функциям
Ссылка для скачивания Этот релиз не рекомендуется для использования в производстве. SHA256: b16e15764b8bc06c5c3f9f19bc8b99fa48e7894aa5a6ccdad65da49bbf564793.
21.10.0-RC3
Исправление ошибок Регрессия в RC1, связанная с LogOperation и перезаписью памяти фрейма. Позволять eth_call и eth_estimateGas принимать адрес контракта в качестве отправителя. Исправлять проблемы параллелизма в Ethpeers.
Скачать Этот релиз не рекомендуется для использования в производстве. SHA256: 3d4857589336717bf5e4e5ef711b9a7f3bc46b49e1cf5b3b6574a00ccc6eda94.
21.10.0-RC1/RC2
Дополнения и улучшения Факторизовать EVM в отдельный модуль, подходящий для включения в виде библиотеки. Низкоуровневые улучшения производительности, изменения, чтобы сократить наихудшую производительность EVM вдвое. Мигрировать ExceptionalHaltReason из перечисления в интерфейс, чтобы позволить нижестоящим пользователям EVM добавлять новые исключительные причины остановки. Уменьшает потребность в анализе JUMPDEST через кэширование. Поддерживает пользовательский файл закрытого ключа для команд публичного экспорта ключей и публичного адреса экспорта ключей.
Исправление ошибок Разрешать указывать файл TOML с помощью переменной среды BESU_CONFIG_FILE. Исправить ошибку, из-за которой частные контракты не могли вызывать публичные контракты, вызывающие публичные контракты.
Ранний доступ к функциям
Скачать Этот релиз не рекомендуется для использования в производстве. SHA256: 536612e5e4d7a5e7a582f729f01ba591ba68cc389e8379fea3571ed85322ff51.
21.7.4
Дополнения и улучшения Обновить Gradle до версии 7.2, которая поддерживает сборку с Java 17.
Исправление ошибок Установить тайм-аут простоя для соединений метрик, чтобы очищать порты, когда они больше не используются. ### Ранний доступ
Группы конфиденциальности в сети можно разблокировать после блокировки без необходимости добавления участника.
Обновлён график газа для Ethereum Classic.
[ЭКСПЕРИМЕНТАЛЬНО] Добавлена поддержка QBFT с созданием блоков на основе PKI.
[ЭКСПЕРИМЕНТАЛЬНО] Поддержка QBFT для использования валидаторов из смарт-контракта.
https://hyperledger.jfrog.io/native/besu-binaries/besu/21.7.4/besu-21.7.4.zip SHA256: 778d3c42851db11fec9171f77b22662f2baeb9b2ce913d7cfaaf1042ec19b7f9
Миграция на Apache Tuweni 2.0.
[ЭКСПЕРИМЕНТАЛЬНО] Поддержка DevP2P-over-TLS.
Поддержка eth_getWork
, eth_submitWork
через порт Stratum.
Метрики Stratum.
Поддержка майнинга ommers.
Обновлённое разрешение в цепочке для проверки разрешений при отправке транзакций.
Удалён устаревший параметр CLI --privacy-precompiled-address
.
Удалён код, поддерживающий EIP-1702.
Добавлена собственная библиотека для альтернативного алгоритма подписи secp256r1, который будет использоваться по умолчанию.
Добавлен параметр командной строки --Xsecp-native-enabled как псевдоним для --Xsecp256k1-native-enabled.
Добавлены помеченные датчики для метрик.
Поддержка протокола eth/66
.
Обновление методов RPC для транзакции после лондонской версии 1559.
[ЭКСПЕРИМЕНТАЛЬНО] Поддержка использования имени хоста DNS вместо IP-адреса в правилах разрешения узлов в цепочке.
Реализация EIP-3607 — отклонение транзакций от отправителей с развёрнутым кодом.
Игнорирование всех неизвестных полей при передаче в eth_estimateGas или eth_call.
Рассмотрение эффективной цены и эффективного приоритетного сбора в правилах замены транзакций.
GetTransactionCount должен возвращать последний счётчик транзакций, если он больше, чем пул транзакций.
Этот выпуск содержит улучшения и исправления ошибок для оптимальной совместимости с другими версиями клиентов London.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.7.2/besu-21.7.2.zip db47fd9ba33b36436ed6798d2474f7621c733353fd04f49d6defffd12e3b6e14
priv_call
теперь использует реализацию OperationTracer NO_TRACING, что улучшает использование памяти.
Сообщения Ping и Pong теперь поддерживают кодирование ENR в виде скаляров или байтов.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.7.1/besu-21.7.1.zip sha256sum 83fc44e39a710a95d8b6cbbbf04010dea76122bafcc633a993cd15304905a402
В этом выпуске активированы блоки для... Besu 21.7.0
eth_sendRawTransaction
, чтобы он возвращал ошибку, когда значение maxPriorityFeePerGas превышает значение maxFeePerGas #2424.eth_getTransactionReceipt
#2477.https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.7.0/besu-21.7.0.zip sha256sum 389465fdcc2cc5e5007a02dc2b8a2c43d577198867316bc5cc4392803ed71034
Besu 21.7.0-RC2
eth_feeHistory
для провайдеров кошельков #2466.https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.7.0-RC2/besu-21.7.0-RC2.zip sha256sum 7bc97c359386cad84d449f786dc0a8ed8728616b6704ce473c63f1d94af3a9ef
Besu 21.7.0-RC1
eth_sendRawTransaction
для возврата ошибки, когда значение maxPriorityFeePerGas превышает значение maxFeePerGas #2424.Этот выпуск содержит блоки активации для Лондона во всех поддерживаемых тестовых сетях:
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.7.0-RC1/besu-21.7.0-RC1.zip sha256sum fc959646af65a0e267fc4d695e0af7e87331d774e6e8e890f5cc391549ed175a
Besu 21.1.7
В качестве рекомендуемого менеджера частных транзакций для Hyperledger Besu теперь используется Tessera. Теперь, когда вся основная функциональность Orion была объединена с Tessera, Orion находится в процессе устаревания. Deprecated.
Мы рекомендуем всем пользователям с активными проектами использовать предоставленные инструкции по миграции, которые задокументированы здесь.
Мы продолжим поддерживать пользователей Orion до 30 ноября 2021 года. Если у вас есть какие-либо вопросы или проблемы, пожалуйста, обратитесь к команде инженеров протокола ConsenSys в канале #orion на Discord или по электронной почте quorum@consensys.net.
Дополнения и улучшения
Исправления ошибок
Ранний доступ к функциям
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.7/besu-21.1.7.zip
sha256: f415c9b67d26819caeb9940324b2b1b9ce6e872c9181052739438545e84e2531
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.6/besu-21.1.6.zip
sha256: 3952c69a32bb390ec84ccf4c2c3eb600ea3696af9a05914985d10e1632ef8488
nonce
при отправке eth_estimateGas или eth_call. #2133
privateFor
для оценки tx. #2160
где одноразовый номер был неправильно использован повторно. #2075
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.5/besu-21.1.5.zip
sha256: edd78fcc772cfa97d11d8ee7b5766e6fac4b31b582f940838a292f2aeb204777
--discovery-dns-url
#2088
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.4/besu-21.1.4.zip 58ae55b492680d92aeccfbed477e8b9c25ccc1a97cca71895e27448d754a7d8b
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.3/besu-21.1.3.zip 38893cae225e5c53036d06adbeccc30aeb86ef08c543fb742941a8c618485c8a
Этот выпуск содержит блоки активации для Берлина во всех поддерживаемых тестовых сетях и основной сети Ethereum. Они следующие:
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/21.1.2/besu-21.1.2.zip 02f4b6622756b77fed814d8c1bbf986c6178d8f5adb9d61076e061124c3d12aa
В этом выпуске содержатся блоки активации для Берлина во всех поддерживаемых тестовых сетях и в основной сети Ethereum. Они следующие:
Особенности, добавленные между версиями 20.10.0 и 21.1.0, включают:
--override-genesis-config=berlinBlock=<номер блока>
. Это связано с тем, что номера блоков ещё не определены. В следующем выпуске номер будет включён в файл генезиса, поэтому поддержка Берлина будет осуществляться без вмешательства. #1898
--skip-pow-validation-enabled
теперь является ошибкой при block import --format JSON
. Это связано с тем, что формат JSON не включает одноразовый номер, поэтому необходимо рассчитать доказательство выполнения работы.eth_call
не вернёт результат JSON-RPC, если вызов завершится неудачно, вместо этого будет возвращена ошибка. Если это было из-за возврата, будет включена причина возврата.eth_call
не завершится неудачей из-за проблем с балансом счёта. Можно добавить параметр "strict": true
к параметрам вызова (с to
и from
), чтобы принудительно проверять баланс.--skip-pow-validation-enabled
теперь является ошибкой при block import --format JSON
. Это связано с тем, что формат JSON не включает одноразовый номер, поэтому необходимо рассчитать доказательство выполнения работы. #1815
--Xlauncher
для запуска лаунчера основной сети. Он поможет легко настроить Besu.eth_call
, когда контракт вызывает возврат. #1829
chainId
, publicKey
и raw
в вызовы API JSON-RPC, возвращающие подробные результаты транзакций. #1835
eth_call
, если явно не запрошено. Проблема #502 Исправление #1834
Ссылка удалена, поскольку этот выпуск содержит устаревшую версию обновления Берлинской сети, которая была изменена 5 марта 2021 года (ссылка). Если вы используете Besu в общедоступных сетях Ethereum, вам необходимо обновиться до версии 21.1.1. Хэш sha256 оставлен для справки.
sha256: b0fe3942052b8fd43fc3025a298a6c701f9edae2e100f0c563a1c5a4ceef71f1
--static-nodes-file
. #1644
blockHash
в методы JSON-RPC, которые принимают параметр блока по умолчанию. #1757
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/20.10.4/besu-20.10.4.zip sha256: f15cd5243b809659bba1706c1745aecafc012d3fc44a91419522da925493537c
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/20.10.3/besu-20.10.3.zip sha256: b5f46d945754dedcbbb1e5dd96bf2bfd13272ff09c6a66c0150b979a578f4389
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/20.10.2/besu-20.10.2.zip sha256: 710aed228dcbe9b8103aef39e4431b0c63e73c3a708ce88bcd1ecfa1722ad307
Флаг —random-peer-priority-enabled добавлен. Позволяет отдавать приоритет входящим соединениям случайным образом. Это предотвратит формирование (обычно небольших, стабильных) сетей. Непроницаемые одноранговые клики.
Добавлен RPC miner_changeTargetGasLimit
. Если установлен целевой лимит газа, позволяет оператору узла изменять его во время выполнения.
Скрыть устаревший параметр --host-whitelist
.
Приоритизировать высокие цены на газ во время майнинга. Ранее мы упорядочивали только по порядку получения транзакций. Это увеличит ожидаемую прибыль при майнинге.
Поддержка обновлённого интерфейса разрешения узлов EEA на основе смарт-контрактов.
Добавлена утилита EvmTool в дистрибутив. EvmTool — это интерфейс командной строки, который может выполнять байт-код EVM и тесты состояния Ethereum.
Обновлены библиотеки для secp256k1 и AltBN серии прекомпилейшены. Эти обновления обеспечивают значительное улучшение производительности в этих областях.
Предоставлять измерения MegaGas/second в журнале при полном импорте блока, например, на этапе быстрой синхронизации.
Добавлены новые конечные точки для получения данных о майнере: eth_getMinerDataByBlockHash
и eth_getMinerDataByBlockNumber
.
Непосредственная поддержка метрик OpenTelemetry.
Поддержка параметра конфигурации qip714block
в файле генезиса, что открывает путь к совместимости разрешений между Besu и GoQuorum.
Новая опция CLI --compatibility-eth64-forkid-enabled
.
Исправления ошибок:
eth_estimateGas
, которая возвращала «Внутренняя ошибка» вместо «Выполнение отменено» в случае отменённой транзакции.Устарело в версии 1.5.1
— Удалена опция CLI --privacy-precompiled-address
. Этот адрес теперь определяется на основе --privacy-onchain-groups-enabled
.
Репозиторий Besu Sample Networks был заменён на Quorum Developer Quickstart.
— Eth/65 теряет пиров. — Быстрая синхронизация при работе с Besu на облачных провайдерах. — Пользователи конфиденциальности с частными транзакциями, созданными с использованием v1.3.4 или ранее.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/20.10.1/besu-20.10.1.zip sha256: ac4fae310957c176564396f73c0f03c60c41129d43d078560d0dab533a69fd2a
Hyperledger Besu переходит на схему нумерации версий CalVer начиная с версии 20.10.0 (ранее 1.6.0). Более подробную информацию о конкретной версии можно найти на сайте проекта. CalVer Besu
Информацию о CalVer Besu можно найти на вики.
При обновлении до версии 20.10 убедитесь, что вы учли следующие критические изменения.
Предыдущие версии Besu устанавливали статус HTTP 400 Bad Request для запросов JSON-RPC, которые завершались ошибкой, независимо от типа ошибки. Эти ответы могли включать полный ответ JSON-RPC с полем ошибки.
В версии Besu 20.10 правильно сформированные запросы с действительными параметрами (количество и содержимое) будут возвращать статус HTTP 200 OK с полем ошибки, если произошла ошибка. Например, запрос на счёт, который не существует в цепочке, или блок по хешу, которого нет у Besu, теперь будет возвращать ответы HTTP 200 OK. Неразборчивые запросы, неправильно сформированные запросы или запросы с недопустимыми параметрами по-прежнему будут возвращать HTTP 400 Bad Request.
Пользователи Web3J должны отметить, что многие вызовы теперь возвращают результат с полем ошибки, содержащим сообщение, тогда как раньше вызов приводил к исключению с сообщением об ошибке в качестве сообщения исключения.
debug_standardTraceBlockToFile
. Этот API принимает хэш блока и воспроизводит блок. Возвращает список файлов, содержащих результат трассировки (по одному файлу на транзакцию). #1392
debug_standardTraceBadBlockToFile
, аналогичный debug_standardTraceBlockToFile
, но может использоваться для получения информации о блоке, который был отклонён как недействительный. #1403
--start-block
и --end-block
добавлены в подкоманду blocks import
. #1399
eth_estimateGas
с включенной конфиденциальностью. Ошибка #1404
Устаревший в 1.5.1
— CLI Опция --privacy-precompiled-address
удалена. Этот адрес теперь определяется на основе --privacy-onchain-groups-enabled
.
Ссылка для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/20.10.0/besu-20.10.0.zip
sha256sum: 2b50a375aae64b838a2cd9d43747006492cae573f1be11745b7f643646fd5a01
debug_getBadBlocks
для анализа и обнаружения недостатков консенсуса. Даже если блок отклонён, он будет возвращён этим методом.Ссылка для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/1.5.5/besu-1.5.5.zip
sha256sum: e67b0a899dc4421054eaa9a8112cb89e1e5f6a56f0d8aa1b0c5111c53dfad2ad
priv_debugGetStateRoot
JSON-RPC для получения корня состояния указанной группы конфиденциальности.--reorg-logging-threshold
для настройки того же. Теперь Besu регистрирует любые реорганизации, где старый или новый заголовок цепочки находится более чем на расстоянии от их общих предков. По умолчанию это 6.debug_batchSendRawTransaction
для отправки нескольких подписанных транзакций одним вызовом.Accept
, который не точно соответствует текстовому формату prometheus.net_version
должен возвращать сетевой идентификатор вместо идентификатора цепочки.Ссылка для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/1.5.4/besu-1.5.4.zip
sha256sum: 1f4df8e1c5e3b5b3abf6289ccfe70f302aa7c29a652b2eb713ffbdc507670420
--Xdns-enabled
и --Xdns-update-enabled
.ecip1017EraRounds
для цепочек Ethereum Classic.Изменение, нарушающее работу функции управления группами конфиденциальности в сети
Эта функция раннего доступа была изменена таким образом, что группы конфиденциальности, созданные с помощью предыдущих версий, больше не могут использоваться.
Чтобы усилить контроль над разрешениями в контракте управления группой конфиденциальности:
addParticipant
и removeParticipant
.Поддержка конфиденциальности в текущей версии библиотеки web3js-eea (v0.9) не будет совместима с Besu v1.5.3. Мы активно работаем над обновлением webj3-eea, которое будет поддерживать эти изменения.
Ссылка для скачивания: https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/1.5.3/besu-1.5.3.zip
sha256sum: 735cd511e1dae1590f2829d9535cb383aa8c526f059b3451859e5fcfccc48985
Версия 1.5.2
Дополнения и улучшения:
operator x-backup-state
и operator x-restore-state
. Форматы данных будут меняться до тех пор, пока в команде CLI присутствует префикс x-
, поэтому не рекомендуется полагаться на эти резервные копии для аварийного восстановления. #1235.Xethstats
и Xethstats-contact
. #1239.admin_addPeer
и admin_removePeer
, будут общими или больше не будут передаваться через обнаружение соответственно. Раньше они не передавались. #1177, внесено br0tchain.Новые виртуальные машины Java в образе Docker:
-openjdk-latest
, например 1.5.2-openjdk-latest
.-graalvm
, например 1.5.2-graalvm
.-openjdk-11
, например 1.5.2-openjdk-11
и просто 1.5.2
.Предполагается, что основная версия виртуальной машины Java или тип виртуальной машины, поставляемые со стандартными образами Docker (latest
, 1.5.x
и т. д.), могут быть изменены во время будущих ежеквартальных выпусков, но останутся неизменными в пределах ежеквартального выпуска.
Исправления ошибок:
— Разрешение вне сети — исправлена ошибка, из-за которой проверка статуса синхронизации препятствовала установлению пиринга, если были настроены статические узлы. #1252.
— GraphQL-запросы miner
в сетях IBFT больше не вернут ошибку. PR #1282, проблема #1272. Изменения, нарушающие работу
При обновлении до версии 1.5 убедитесь, что вы учли следующие изменения, нарушающие работу.
Чтобы обеспечить наилучшую безопасность, мы меняем user:group
в контейнере Docker на besu
.
Что это значит для вас:
besu:besu
в качестве владельца.Обратите внимание, что пользователь besu
существует только внутри контейнера, а не за его пределами. Один и тот же идентификатор пользователя может соответствовать другому пользователю вне образа.
Если вы монтируете локальные папки, лучше всего установить пользователя с помощью аргумента Docker --user
. Используйте UID, поскольку имя пользователя может не существовать внутри контейнера Docker. Убедитесь, что каталог, который монтируется, принадлежит этому пользователю.
Метод NAT MANUAL
был удалён.
Если вы использовали метод MANUAL
, используйте вместо него метод NONE
. Поведение метода NONE
такое же, как и у ранее поддерживаемых методов MANUAL
.
Для обновления минорной версии Besu требуется обновить Orion до последней минорной версии. То есть для пар узлов Besu <> Orion при обновлении Besu до v1.5 необходимо, чтобы Orion был обновлён до v1.6. Старые версии Orion больше не будут работать с Besu v1.5.
Особенности, добавленные между версиями 1.4 и 1.5, включают:
eth_hashrate
и eth_submitHashrate
, чтобы получить хешрейт при майнинге с помощью GPU-майнера.trace_replayBlockTransactions
, trace_Block
и trace_transaction
.BlockAdded
и BlockReorg
теперь доступны через Plugin API.Публичные сети по умолчанию используют быструю синхронизацию. Режим синхронизации по умолчанию для именованных сетей без разрешений, таких как основная сеть Ethereum и тестовые сети, теперь FAST
.
FULL
.--sync-mode
, чтобы изменить режим синхронизации.Полная поддержка майнинга. Добавлена полная поддержка eth_hashrate
и eth_submitHashrate
. Теперь можно получить хешрейт, когда мы майним с помощью графического процессора.
Улучшения производительности. Добавление собственных библиотек и изменения в структурах данных в EVM улучшили время синхронизации Besu и выполнения EVM.
Усовершенствования API трассировки. API больше не является функцией раннего доступа и теперь полностью поддерживает trace_replayBlockTransactions
, trace_Block
и trace_transaction
.
Новые события плагина API блока: BlockAdded
и BlockReorg
теперь доступны через API плагина #637.
Добавлена экспериментальная опция CLI --Xnat-kube-pod-name
, чтобы указать имя балансировщика нагрузки, используемого диспетчером nat Kubernetes #1078.
Локальное разрешение TOML-конфигурации теперь поддерживает дополнительные ключи (nodes-allowlist
и accounts-allowlist
). Поддержка nodes-whitelist
и accounts-whitelist
будет удалена в будущем выпуске.
Добавьте отсутствующее поле mixHash
для конечных точек JSON RPC eth_getBlockBy*
#1098.
Besu теперь имеет строгую проверку частных транзакций, чтобы убедиться, что privateFrom
в транзакции совпадает с ключом отправителя Orion, который распространил полезную нагрузку. Для работы Besu 1.5+ требуется Orion 1.6+.
В этом выпуске нет исправлений ошибок, влияющих на пользователя (https://wiki.hyperledger.org/display/BESU/Changelog).
Известные проблемы — это открытые проблемы, классифицированные как проблемы с очень высоким или высоким уровнем воздействия (https://wiki.hyperledger.org/display/BESU/Defect+Prioritisation+Policy).
Использование K8S для разрешения IP-адресов служб вместо IP-адресов модулей может привести к сбою #1190. Обходной путь — не использовать разрешение в K8S.
Перезапуск из-за нехватки памяти может вызвать несогласованное состояние частной сети #1110. Обходной путь — убедитесь, что вы выделили достаточно памяти для среды выполнения Java, чтобы узел не исчерпал память.
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/1.5.0/besu-1.5.0.zip
sha256sum: 56929d6a71cc681688351041c919e9630ab6df7de37dd0c4ae9e19a4f44460b2
Для ссылок для скачивания выпусков до 1.5.0 посетите https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/
Известные проблемы — это открытые проблемы, классифицированные как проблемы с очень высоким или высоким уровнем воздействия (https://wiki.hyperledger.org/display/BESU/Defect+Prioritisation+Policy).
Обновлено с учётом изменений.
Известные проблемы — это открытые вопросы, классифицированные как «Очень высокое» или «Высокое воздействие» (https://wiki.hyperledger.org/display/BESU/Defect+Prioritisation+Policy).
— При вызове delete mapping[addr]
или mapping[addr] = 0
возвращается Intrinsic gas exceeds gas limit
#696.
Сбой вызова delete и установка в 0 Solidity mapping в Solidity.
Изменение eth/65
не обратно совместимо. Это имеет следующие последствия:
Обходной путь -> вернуться к версии 1.4.2.
В настоящее время тестируется исправление.
Выявлена критическая проблема для пользователей, работающих с конфиденциальностью и использующих частные транзакции, созданные с помощью Hyperledger Besu версии 1.3.4 или более ранней. Если у вас есть сеть с частной транзакцией, созданной с использованием версии 1.3.4 или более ранней, пожалуйста, прочитайте следующее и примите соответствующие меры: https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users.
eth/65
. #608.hash
и метод getHash()
устарели. Они будут удалены в выпуске 1.5.0. #639.Известная проблема RocksDB приводит к сбою быстрой синхронизации при работе Besu на некоторых облачных провайдерах. Отображается следующая ошибка:
...
EthScheduler-Services-1 (importBlock) | ERROR | PipelineChainDownloader | Chain download failed. Restarting after short delay.
java.util.concurrent.CompletionException: org.hyperledger.besu.plugin.services.exception.StorageException: org.rocksdb.RocksDBException: block checksum mismatch:
....
Такое поведение наблюдалось на AWS и Digital Ocean.
Обходное решение -> На AWS требуется полный перезапуск виртуальной машины AWS для перезапуска быстрой синхронизации.
Быстрая синхронизация в настоящее время не поддерживается на Digital Ocean. Мы изучаем варианты добавления поддержки быстрой синхронизации на Digital Ocean.
Ошибка синхронизации с основной сетью на узле Besu 1.3.7 — MerkleTrieException #580. Связанная ошибка — Невозможно загрузить значение узла дерева по хешу
, и она вызвана сочетанием полной синхронизации и обрезки.
Временные решения:
--pruning-enabled=false
при быстрой синхронизации.MerkleTrieException
, удалите базу данных и повторно синхронизируйте.Активно ведётся работа над исправлением этой проблемы. ### Спецификация файла учётных данных RPC не должна включать принудительную аутентификацию RPC #454
Улучшенные сообщения estimateGas #436. Когда запрос estimateGas не проходит проверку, в ответе возвращается улучшенное сообщение об ошибке.
Функции раннего доступа — это доступные функции, которые не рекомендуются для производственных сетей и могут иметь нестабильные интерфейсы.
— Когда быстрая синхронизация не может найти достаточно действительных пиров достаточно быстро, Besu по умолчанию выполняет полную синхронизацию.
Обходные пути:
--pruning-enabled=false
, чтобы уменьшить вероятность возникновения ошибки обрезки.Исправление для устранения перехода по умолчанию к полной синхронизации находится в разработке [https://github.com/hyperledger/besu/pull/427] и планируется включить в версию 1.4.1.
— Ошибка синхронизации с основной сетью на узле Besu 1.3.7 — MerkleTrieException #BESU-160. Связанная ошибка: «Невозможно загрузить значение узла дерева Меркла для хэша». Она вызвана сочетанием полной синхронизации и обрезки.
Обходные пути:
--pruning-enabled=false
при быстрой синхронизации.Расследование этой проблемы продолжается, и исправление запланировано для версии 1.4.1.
— Разрешение в цепочке не позволяет узлам устанавливать одноранговые соединения при использовании узла начальной загрузки, который не является валидатором #BESU-181.
Обходной путь: при использовании разрешения в цепочке убедитесь, что узлы начальной загрузки также являются валидаторами.
Hyperledger Besu версии 1.4 реализует новую структуру данных для хранения частного состояния, которая не совместима с предыдущими версиями. Миграция будет выполнена при первом запуске версии 1.4 для повторной обработки существующих частных транзакций и повторного создания данных частного состояния в формате версии 1.4.
Если у вас есть существующие частные транзакции, см. подробности миграции [docs/Private-Txns-Migration.md].
Поддержка TLS [https://besu.hyperledger.org/en/latest/Concepts/TLS/] для защиты клиентского и серверного взаимодействия.
Мультиарендность [https://besu.hyperledger.org/en/latest/Concepts/Privacy/Multi-Tenancy/] для одновременного использования одного и того же узла Besu и Orion несколькими участниками.
Плагин API [https://besu.hyperledger.org/en/latest/Concepts/Plugins/] для создания Java-плагинов для расширения Hyperledger Besu.
Поддержка дополнительных методов NAT [https://besu.hyperledger.org/en/latest/HowTo/Find-and-Connect/Specifying-NAT/].
Добавлен метод priv_call
[https://besu.hyperledger.org/en/latest/Reference/API-Methods/#priv_call], который вызывает локально частную функцию контракта и не изменяет частное состояние.
Besu перешёл от внутренней библиотеки Bytes к библиотеке Apache Tuweni Bytes [https://tuweni.apache.org/] #295 и #215. Это включает использование библиотеки в интерфейсах API плагинов.
Ранний доступ — это функции, доступные для тестирования, но не рекомендованные для производственных сетей. Они могут иметь нестабильный интерфейс.
Конфиденциальность, совместимая с реорганизацией [https://besu.hyperledger.org/en/latest/Concepts/Privacy/Privacy-Overview/#reorg-compatible-privacy], для включения частных транзакций в сетях, использующих механизмы консенсуса, которые разветвляются.
Трассировка. Оба параметра подписанных клиентов CA отключены, а файл известных клиентов не указан.
Stable Plugins APIs #346
Сервис BesuEvents и связанный с ним пакет данных были отмечены как стабильный API плагина.
Добавлена поддержка вызова JSON-RPC trace_replayBlockTransactions. Чтобы включить этот API, добавьте TRACE в параметры rpc-http-api (например, --rpc-http-api TRACE в командной строке).
Этот API не готов к работе в производственной среде. Существуют известные ошибки, связанные с отслеживаемой памятью вызовов и возвратов, и расчёт газа, сообщаемый в плоских трассах, не всегда совпадает с правильным расчётом газа для консенсуса.
Представлены новые параметры командной строки для включения TLS на интерфейсе Ethereum JSON-RPC HTTP, чтобы клиенты вроде EthSigner могли подключаться через TLS: --rpc-http-tls-enabled=true (Необязательно — требуется только если --rpc-http-enabled установлен в true) Устанавливается в true для включения TLS. По умолчанию — false. --rpc-http-tls-keystore-file="/path/to/cert.pfx" (Обязательно, если включён TLS) Путь к хранилищу ключей формата PKCS12, которое содержит сертификат сервера и его закрытый ключ. --rpc-http-tls-keystore-password-file="/path/to/cert.passwd" (Обязательно, если включён TLS) Путь к текстовому файлу, содержащему пароль для разблокировки хранилища ключей. --rpc-http-tls-known-clients-file="/path/to/rpc_tls_clients.txt" (Необязательно) Путь к файлу в формате простого текста, содержащего разделённые пробелами общее имя сертификата клиента и отпечатки пальцев sha-256, когда они не подписаны известным CA. Наличие этого файла (даже пустого) включает аутентификацию клиента TLS. То есть клиент представляет сертификат серверу при установлении связи TLS, и сервер устанавливает, что сертификат клиента либо подписан надлежащим/известным CA, либо доверяет сертификату клиента, читая отпечаток пальца sha-256 из указанного выше файла известных клиентов.
Формат файла следующий (в качестве примера): localhost DF:65:B8:02:08:5E:91:82:0F:91:F5:1C:96:56:92:C4:1A:F6:C6:27:FD:6C:FC:31:F2:BB:90:17:22:59:5B:50
Версия 1.3.7 включает критическое исправление для пользователей Ethereum MainNet и обновление Muir Glacier. Мы рекомендуем пользователям общедоступных сетей Ethereum (MainNet, Ropsten, Rinkeby и Goerli) немедленно выполнить обновление. Это обновление также настоятельно рекомендуется для пользователей частных сетей.
Для получения дополнительной информации см. Hyperledger Besu Wiki https://wiki.hyperledger.org/display/BESU/Mainnet+Consensus+Bug+Identified+and+Resolved+in+Hyperledger+Besu.
Для совместимости с обновлением Ethereum Muir Glacier используйте версию 1.3.7 или более позднюю.
Для обеспечения совместимости с обновлением ETC Agharta используйте версию 1.3.7 или более позднюю.
operator generate-log-bloom-cache
для генерации кэша битов блочных блоков, что улучшает производительность запросов к журналу #245.Эдвард Мак добавлен в качестве нового сопровождающего.
--required-block
для работы с разделением цепочки блоков #79.--target-gas-limit
#24 (благодаря новому участнику cfelde).--network-id
#1891.pantheon blocks export
#1887 (благодаря matkt).Удалён плагин release в пользу нового процесса с ветками (#1841, #1843, #1848, #1855).
Обновлены узлы Görli (#1842).
Удалена ненужная тестовая зависимость (#1839).
Добавлено предупреждение при использовании комментариев в файле genesis (#1838).
Добавлен экспериментальный флаг для отключения таймеров (#1837).
Исправлены тесты FlatFileTaskCollection (#1833).
Добавлена утилита импорта цепочки json (#1832).
Добавлены тесты для обхода дерева AllNodesVisitor (#1831).
Обновлено требование к privateFrom (#1829).
Сделан явным тот факт, что транслируемые аккаунты могут не иметь адреса (#1828).
Рефакторинг метода normalizeKeys (#1826).
Удаление мёртвых параметров (#1825).
Более приятное название для Corretto (#1819).
Изменение основного метода JSON-RPC для поддержки ReTestEth (#1815, #1818).
Добавление функции перемотки к блоку (#1814).
Поддержка механизмов уплотнения NoReward и NoProof (#1813).
Строгий короткий шестнадцатеричный код. - Ревизия строк для повторного тестирования #1812.
Генезис-парсинг приведён в порядок #1809.
Обновление Orion до версии 1.3.2 #1805.
Подписка на новые заголовки теперь выдаёт события только для канонических блоков #1798.
Переоценка опкодов в зависимости от размера дерева Меркла #1795.
Ревизия назначений версий по стандарту Istanbul #1794.
Обновлён RevertReason для возврата BytesValue #1793.
Изменён источник priv_getPrivacyPrecompileAddress #1786 (спасибо iikirilov).
Цепной идентификатор в опкоде по умолчанию возвращает 0 #1785.
Разрешено fixedDifficulty=1 #1784.
В образе Docker обновлены значения по умолчанию для интерфейсов хоста #1782.
Отслеживание преизображений ключей состояния счёта в мире #1780.
Модифицирован PrivGetPrivateTransaction для принятия публичного хэша транзакции #1778 (спасибо josh-richardson).
Удалён открытый ключ анклава из параметров #1789, #1777 (спасибо iikirilov).
Добавлено отслеживание преизображения ключа хранения #1772.
Обновлено возвращение метода priv_getPrivacyPrecompileAddress #1766 (спасибо iikirilov).
Тесты разрешений с поведением статических узлов #1764.
Интеграционный тест для создания контракта с privacyGroupId #1762 (спасибо josh-richardson).
Адрес локального узла в Clique и IBFT указан как адрес coinbase #1758, #1760.
Исправлена проверка подписи приватной транзакции #1753.
Флаг CLI для установки размера кэша задачи WorldStateDownloader #1749 (спасибо matkt).
Vertx обновлён до версии 2.8.0 #1748.
RevertReason изменён на BytesValue #1746.
Статические узлы: приёмный тест #1745.
Указывается хешрейт 0, когда координатор майнинга не поддерживает майнинг #1744, #1757.
Реализован EIP-2200 — Net Gas Metering Revised #1743.
Проверка chainId в PrivateTransactionValidator #1741.
Снижена стоимость газа по умолчанию #1739.
Дублирование данных тестовых блоков удалено #1737.
Методы EEA переименованы в priv методы #1736 (спасибо josh-richardson).
Обработка nonce в GenesisState. ### Дополнения и улучшения
Добавлена поддержка протокола UPnP. #1334 (спасибо...)
К сожалению, без контекста невозможно перевести этот текст полностью. В запросе не хватает информации.
В ответе переведён только указанный фрагмент. Лимит доли исходящих соединений от пиров #1665.
EIP-1706 — отключить SSTORE с gasleft lt call stipend #1706.
EIP-1108 — изменить цену alt_bn128 #1704.
EIP-1344 — ChainID Opcode #1690.
Новый релиз образа Docker #1664.
Поддержка изменения уровня журнала во время выполнения #1656 (спасибо matkt).
Реализовать команду dump для выгрузки определённого блока из хранилища #1641 (спасибо matkt).
Добавить eea_findPrivacyGroup в Besu #1635 (спасибо Puneetha17).
Обновлённый eea send raw transaction с идентификатором группы конфиденциальности #1611 (спасибо iikirilov).
Добавлен Revert Reason #1603.
Удалить открытый ключ анклава из параметра #1789.
Обновить значения по умолчанию для интерфейсов хоста #1782.
Изменить PrivGetPrivateTransaction, чтобы он принимал хэш открытого tx #1778.
Удалить открытый ключ анклава из параметра #1777.
Возвращать адрес Ethereum адреса приватного прекомпила из priv_getPrivacyPrecompileAddress #1766.
Сообщать локальный адрес узла как coinbase в Clique и IBFT #1760.
Дополнительный интеграционный тест для создания контракта с privacyGroupId #1762.
Показывать 0 хешрейт, когда координатор майнинга не поддерживает майнинг #1757.
Исправить проверку подписи приватной транзакции #1753.
RevertReason изменён на BytesValue #1746.
Переименовать различные методы eea в приватные методы #1736.
Обновите версию Orion #1716.
Переименуйте флаг CLI для лучшего упорядочивания опций #1715.
Регулярные обновления зависимостей #1712.
Исправьте орфографическую ошибку в имени метода getApplicationPrefix #1711.
Ждать и повторять попытку, если цепочка лучшего партнёра слишком короткая для быстрой синхронизации #1708.
Исправление ошибки в eea get private transaction #1707 (спасибо iikirilov).
Переработать значения по умолчанию флага удалённого подключения #1705.
Сообщить о недопустимых параметрах из файла конфигурации #1703.
Добавьте ERROR в список параметров уровня журнала CLI #1699.
Включите опцию CLI разрешения учётных записей в сети #1686.
Освободить статические узлы от всех ограничений соединения #1685.
Рефакторинг анклава #1684.
Добавление поддержки опкодов и предкомпилированных версий #1683.
Используйте процент вместо дроби для опции процента удалённых подключений #1682.
Добавлено сообщение об ошибке. for calling eth_sendTransaction
Считывать конфигурацию из переменных среды, если файл конфигурации не указан to iikirilov)
Add placeholders system to have global variables in markdown #1425
--tx-pool-retention-hours
#1333.И так далее.
К сожалению, не удалось перевести часть текста из-за отсутствия контекста. Текст запроса представляет собой перечень задач и улучшений, связанных с разработкой и тестированием программного обеспечения.
В запросе упоминаются:
Основной язык текста — английский.
Для определения основного языка текста запроса использовался метод частотного анализа. В запросе преобладают слова английского происхождения, а также используются английские аббревиатуры и термины. Когда запрашивается в реальном времени #1338:
public-key
#1049.net_enode
JSON-RPC #1119 (спасибо mbergstrand).staticnodes.json
#1106.tx-pool-max-size
#1078.admin_nodeInfo
JSON-RPC #1012.--metrics-category
, чтобы включать только выбранные метрики #969.Примечание: данный текст является переводом исходного текста, предоставленного в запросе. В нём могут быть неточности или ошибки. Удалить дубликаты из API, указанных через интерфейс командной строки.
Синхронизатор возвращает false, если он синхронизирован.
Добавлен fromHexStringStrict для проверки ровно 20-байтных адресов.
Исправлен сценарий взаимоблокировки в AsyncOperationProcessor и повторно включён WorldStateDownloaderTest.
Игнорируется WorldStateDownloaderTest.
Обновлены флаги разрешений локального конфига.
Улучшения пайплайна.
Разрешение на использование смарт-контракта.
Добавление значения ожидающих транзакций по умолчанию в BesuControllerBuilder.
Исправление периодичности в WorldStateDownloaderTest.
Уменьшено количество отслеживаемых блоков и транзакций Besu.
Тайм-аут длинного теста.
Обновление Errorprone до версии 2.3.3.
Добавить метрику для отслеживания памяти, используемой считывателями таблиц RocksDB.
Не разрешать создание нескольких датчиков с одинаковым именем.
Обновить Peer Discovery для использования NodePermissioningController.
Процесс загрузки начального состояния мира перемещён внутрь WorldDownloadState.
Включить возможность приватных транзакций для Clique (спасибо Puneetha17).
Включить приватные транзакции для IBFT (спасибо Puneetha17).
Усовершенствования версии.
Не удалять завершённые задачи из RocksDbTaskQueue.
Поддержка плоского отображения с несколькими потоками.
Добавлять название этапа пайплайна в поток при выполнении.
Использовать пайплайн для загрузки состояния мира.
Изменения JSON RPC для TXPool.
Создать кэш в памяти поверх очереди загрузки состояния мира.
Оптимизировать стандартные метрики.
Улучшить строку журнала импортированных блоков.
Контроллер разрешений смарт-контрактов.
Установить тайм-аут при ожидании остановки служб JSON-RPC, WebSocket RPC и Metrics.
Внедрить фреймворк пайплайнов для упрощения параллельной обработки.
Контроллер разрешения узлов.
Заглушка контроллера разрешений смарт-контрактов.
Предоставить синхронный метод запуска в Runner.
Изменение заголовка цепи должно инициировать новую проверку разрешений для активных пиров.
Исправить исключения при получении метрик после завершения загрузки состояния мира. Отправитель одноразового номера #1065.
Исправить Istanbul, чтобы обрабатывать Eth/62 и Eth/63 #1063.
Закрыть частный поставщик хранилища #1059 (спасибо Puneetha17).
Добавить метки к задачам конвейера метрик #1057.
Повторно включить синхронизацию кворума #1056.
Не регистрировать ожидаемые сбои как ошибки #1054.
Сделать findSuitablePeer абстрактным #1053.
Отслеживать добавленное в txpool #1048.
Исправить ImportBlocksTask, чтобы запрашивать только у пиров, которые заявляют о наличии блоков #1047.
Не запускать валидатор блока DAO, если блок DAO равен 0 #1044.
Избежать ненужных копий данных в RocksDbKeyValueStorage #1040.
Обновить логику обнаружения, чтобы доверять начальным узлам только при рассинхронизации #1039.
Исправить IndexOutOfBoundsException в DetermineCommonAncestorTask #1038.
Добавить rpc_modules
JSON-RPC #1036.
Простой смарт-контракт разрешений #1035.
Рефакторинг enodeurl для использования inetaddr #1032.
Обновить параметры CLI в сообщении о несоответствии файла генезиса #1031.
Убрать зависимость eth.core от eth.permissioning #1030.
Сделать alloc необязательным и предоставить более приятные сообщения об ошибках при неверном конфиге генезиса #1029.
Обрабатывать закрытие запроса метрики до того, как будет сгенерирован ответ #1028.
Изменить EthNetworkConfig начальные узлы всегда быть URI #1027.
Избегать конфликтов портов в приёмочных тестах #1025.
Включить контрольные тесты в jacoco #1024.
Приёмочный тест — настраиваемая цена газа #1023.
Получить внутренние логи и вывод #1022 (спасибо Puneetha17).
Исправить состояние гонки в WebSocketService #1021.
Убедиться, что порты devp2p правильно записаны в файл портов #1020.
Сообщать правильный TCP-порт в пакетах PING, когда он отличается от UDP-порта #1019.
Реорганизовать временный обработчик транзакций #1017.
Возобновить загрузку состояния мира из существующей очереди #1016.
Обновлены приёмочные тесты IBFT с более длительным таймаутом на первом блоке #1015.
Обновите приёмочные тесты IBFT, чтобы дождаться первого блока #1013.
Удалить полную реализацию Хасимото, поскольку она никогда не используется #1011.
Созданы уведомления SyncStatus #1010.
Устранить прерывистость приёмочного теста #1008.
Рассмотреть возможность остановки загрузки состояния мира после 100 запросов без прогресса #1007.
Уменьшить уровень журнала, когда майнер блоков прерывается. 1.0.1
В версии 1.0 отсутствовала подкоманда экспорта адреса открытого ключа.
Добавления и улучшения: — добавлена подкоманда «public-key export-address» #888.
1.0
[Здесь должен быть перевод текста, но он не может быть выполнен из-за отсутствия контекста.]
Примечание: в ответе сохранены форматирование и гиперссылки из исходного запроса. Дополнения и улучшения
Добавлена команда rlp encode
[#965].
Метод перезагрузки файла разрешений [#834].
Добавлено повторное связывание для Websockets [#905].
Поддержка кода контракта генезиса [#749] (спасибо kziemianek).
Технические улучшения
— Справка по миксину CLI #895 (macfarla).
— Использовать абсолютный путь к данным вместо относительного. #894.
— Исправить очередь задач так, чтобы сохранялось обновлённое количество отказов для запросов #893.
— Исправить заголовок аутентификации #891.
— Реорганизовать задачи Eth #890.
— Модульные тесты BlockBroadcaster #887.
— Исправление ошибок проверки подлинности файла #886.
— Устранение проблем с расположением файлов в Docker #885.
— Правильно обрабатывать исключения в EthScheduler #884.
— Больше узлов загрузки для Goerli #880.
— Переименовать команду хеширования пароля #879.
— Добавить метрики для исполнителей EthScheduler #878.
— Отключать одноранговые узлы, удалённые из белого списка узлов #877.
— Уменьшить количество сообщений журнала от пакетов обнаружения и установления связи с недействительными узлами #876.
— Обнаруживать остановленные загрузки состояния мира #875.
— Ограничить размер буфера будущих сообщений Ibft #873.
— Ibft2: заменить NewRound расширенным предложением #872.
— Исправлена периодическая проверка поддерживаемых соединений admin_addPeer #871.
— Разрешения метода WebSocket #870.
— Выбирать новый опорный блок, когда состояние мира становится недоступным #869.
— Ввести FutureUtils для уменьшения дублирования кода вокруг CompletableFuture #868.
— Реализовать отмену состояния мира #867.
— Переименование команды CLI для переименования файла конфигурации аутентификации #865.
— Разбить проверку RoundChangeCertificate #864.
— Отключаться от узлов, общий предок которых находится до нашей быстрой синхронизации #862.
— Начальная разработка для распространения блоков #860.
— Исправлено исключение NullPointerException при определении быстрой синхронизации #859.
— Проверка недопустимого токена #856.
— Перенос NodeWhitelistController в пакет разрешений #855.
— Исправление состояния гонки при загрузке данных путём создания API TaskQueue #853.
— Изменён разделитель в разрешениях JSON RPC #852.
— Приёмочные испытания WebSocket теперь могут использовать WebSockets #851.
— IBFT уведомляет EthPeer, когда удалённый узел имеет лучший блок #849.
— Поддержка возобновления быстрой синхронизации загрузок #848.
— Настройка Tweak Fast Sync #847.
— Валидация конфигурации аутентификации RPC + тесты. #846.
— Очистка сохранения FastSyncState #845.
— Параллельно извлекать подписи в параллельном импортере блоков. #844. «Input is too long» error на Windows.
Ренумеровать TerminatedRoundArtefacts в PreparedRoundArtefacts.
Ренумеровать методы MessageFactory в Ibft.
Обновить WorldStateDownloader, чтобы он фильтровал только известные запросы кода.
В нескольких вариантах имён искать только самый длинный вариант.
Переместить ethTaskTimer в абстрактный корень.
Реализовать параллельный импорт блоков.
Перед выбором опорного блока ждать появления узла с предполагаемой высотой цепи.
При быстрой синхронизации блоков случайным образом выполнять полную проверку.
Доработать сообщения IBFT, объединив блоки с сообщениями.
Добавить в EthScheduler.
Исправить проверку node whitelist isPermitted.
Этикетки Eth/63.
Сохранить разрешения в белый список.
Создать валидаторы сообщений для NewRound и RoundChange.
Провести тесты для FastSyncChainDownloader в целом.
Уплощить API сообщений IBFT.
Добавлены TerminatedRoundArtefacts.
Исправить названия потоков в EthScheduler, добавив номер потока.
Отделить приём изменения раунда от RoundChangeCertificate.
Аутентификация JSON-RPC при входе.
Разделить Ibft MessageValidator на компоненты.
Обеспечить, чтобы первый заголовок контрольной точки всегда был в локальной цепочке блоков для FastSyncCheckpointHeaderManager.
Реорганизовать компоненты разрешений, сделав их опциональными.
Интегрировать очередь на основе rocksdb в WorldStateDownloader.
Сделать orion общим для enclave.
Использовать типы сообщений в фабрике сообщений IBFT.
Правильно обрабатывать тайм-ауты при запросе заголовков контрольных точек.
Обновите RoundChangeManager, чтобы использовать уплощённое сообщение.
Обрабатывать сбои проверки при быстром импорте блоков.
Обновлённые API IbftRound и RoundState используют сообщения в обёртке.
Обработка исключений.
Обновление версий зависимостей и очистка сборки.
IbftBlockHeightManager принимает новые типы сообщений.
Обработка ответов об ошибках для API разрешений.
IPV6 bootnodes не работают.
Использование тегов сборки pantheon вместо другого репозитория.
Регистрация основных этапов при запуске и дополнительная регистрация. Улучшения
Версия 0.9.1
Создана и совместима с JDK8.
Версия 0.9
В версии 0.9 были внесены изменения в параметры командной строки для улучшения удобства использования. Многие параметры командной строки версии 0.8 больше не работают.
Документация была обновлена, чтобы использовать изменённые параметры командной строки, а справочник командной строки документирует изменённые параметры.
Предыдущий параметр | Новый параметр | Изменение |
---|---|---|
--config |
--config-file |
Переименован |
--datadir |
--data-path |
Переименован |
--dev-mode |
--network=dev |
Заменён на --network
|
--genesis |
--genesis-file |
Переименован |
--goerli |
--network=goerli |
Заменён на --network
|
--metrics-listen=<HOST:PORT> |
--metrics-host=<HOST> и --metrics-port=<PORT>
|
Разделены на хост и порт |
--miner-extraData |
--miner-extra-data |
Переименован |
--miner-minTransactionGasPriceWei |
--min-gas-price |
|
------------------------------------------ | --------------------------------------------------------------------------------------------------------- | --------------------------------------- |
Renamed | ||
--no-discovery |
--discovery-enabled |
Заменено |
--node-private-key |
--node-private-key-file |
Переименовано |
--ottoman |
N/A | Удалено |
--p2p-listen=<HOST:PORT> |
--p2p-host=<HOST> и --p2p-port=<PORT>
|
Разделено на опции хоста и порта |
--rinkeby |
--network=rinkeby |
Заменено на опцию --network
|
--ropsten |
--network=ropsten |
Заменено на опцию --network
|
--rpc-enabled |
--rpc-http-enabled |
Переименовано |
--rpc-listen=<HOST:PORT> |
--rpc-http-host=<HOST> и --rpc-http-port=<PORT>
|
Разделено на опции хоста и порта |
--rpc-api |
--rpc-http-api |
Переименовано |
--rpc-cors-origins |
--rpc-http-cors-origins |
Переименовано |
--ws-enabled |
--rpc-ws-enabled |
Переименовано |
--ws-api |
--rpc-ws-api |
Переименовано |
--ws-listen=<HOST:PORT> |
--rpc-ws-host=<HOST> и --rpc-ws-port=<PORT>
|
Разделено на опции хоста и порта |
--ws-refresh-delay |
--rpc-ws-refresh-delay |
Переименовано |
Private Network Quickstart был перемещён из репозитория pantheon
в репозиторий pantheon-quickstart
. Учебное пособие по быстрому запуску частной сети было обновлено с учётом перемещения.
admin_addPeer
#622.--p2p-enabled
#619.--nodes-whitelist
и --accounts-whitelist
#694.getRootCause
через реализацию Guava #692.WorldStateDownloader
с рабочим процессом быстрой синхронизации #682.--max-trailing-peers
#680.WorldStateDownloader
, чтобы он принимал заголовок #677.discovery-enabled
#661.WorldStateDownloader
#658.admin_addPeer
#651.p2pEnabled
в ProcessBesuNodeRunner
#649.network
#645.И так далее.
К сожалению, без контекста невозможно понять, о чём идёт речь в запросе, и перевести его полностью. Технические улучшения:
--bootnodes
команды, чтобы он принимал нулевые аргументы.Начиная с версии v0.8.3, входящие HTTP-запросы принимаются только от хостов, указанных с помощью параметра командной строки --host-whitelist
. Если этот параметр не указан, то по умолчанию используется значение localhost
.
Если вы используете URL http://127.0.0.1
для выполнения вызовов JSON-RPC, используйте --host-whitelist
, чтобы указать имя хоста 127.0.0.1
, или обновите имя хоста до localhost
.
Если ваше приложение публикует порты RPC, укажите имена хостов при запуске Besu. Например:
pantheon --host-whitelist=example.com
Укажите *
или all
для --host-whitelist
, чтобы эффективно отключить защиту хоста и воспроизвести поведение до версии v0.8.3. Это не рекомендуется для производственного кода.
--nodes-whitelist
в CLI и NodeWhitelistController #346.--node-whitelist
#365.--goerli
#370 (спасибо @Nashatyrev).Извлечение параметров CLI, не связанных с Docker, в picoCLI mixin. #323.
Предварительная подготовка IBFT для проверки соответствия раунда блоку #329.
Исправлен приёмный тест #324.
Добавлен IbftFinalState #385.
Блок форка Константинополя #382.
Исправлена ошибка в pantheon.cli.BesuCommandTest
на Windows #380.
Теперь по-другому настраивается тестирование дыма JDK #374.
Повторное включение clique AT #373.
Игнорирование приёмного теста #372.
Изменения для поддержки Gradle 5.0 #371.
Клик: предотвращение прерывания добычи блоков вне очереди во время добычи блоков по очереди #364.
Время всех задач #361.
Переработка VoteTallyCache для более точного представления цели #360.
Добавьте... UNKNOWN DisconnectReason
#359
Новый раунд валидации
Обновление валидаторов для теста хеш-блока, чтобы начать с блока 1
Идиоматический паттерн Builder
Вернуть Repair Clique Proposer Selection #339 — нарушает работу тестовой сети Görli
Фиксированные порты в тестах
Обновить файл генезиса теста клики, чтобы использовать правильные имена свойств клики
Поддержка списка адресов в подписке на логи
Обрабатывать исключения обработчика в System.err вместо .out
Переименовать классы сообщений IBFT
Добавить дополнительные тесты RLP
Понизить рейтинг spotless до 3.13.0, чтобы исправить проблемы с потоками
Принятие теста eth_getTransactionReceipt
Обновите vertx до 3.5.4
Валидация изменения раунда
Основные валидаторы сообщений IBFT
Небольшие исправления в планировании блоков кликой
Обновление версии зависимостей
Сборка нескольких JVM
Тест принятия смарт-контракта
Исправление ошибки ответа WebSocket
Изменение формулировки сообщений об ошибках во время майнинга
Тесты принятия клики
Делегировать создание дополнительных методов JSON-RPC контроллеру Besu
Удалить ненужные классы RlpInput и RlpOutput
Удаление RlpUtils
Включение ранее игнорируемых приёмочных тестов
Пиры IPv6
Загрузочный узел IPv6
Приёмный тест для метода JSON-RPC getTransactionReceipt
Внедрение StorageProvider в экземпляры BesuController
Ошибки io.netty.util.internal.OutOfDirectMemoryError путём удаления подсчёта ссылок из сетевых сообщений.
Спам в журнале: бесконечный цикл в nioEventLoopGroup (спасибо @5chdn за сообщение) (PR #261).
Импорт Rinkeby может зависнуть при слишком большом количестве фрагментов (спасибо @steffenkux и @5chdn за сообщения) (PR #255).
Клик неправильно использовал идентификатор цепочки вместо идентификатора сети в сообщениях о состоянии ETH (PR #209).
Предупреждения об устаревании Gradle (PR #246 с благодарностью @jvirtanen).
Проблема консенсуса на Ropsten:
В качестве максимального размера для операций CALL (PR #236):
runBesuPrivateNetwork.sh
(PR #237, спасибо @matt9ucci);CompressionException: Snappy decompression failed
, спасибо @5chdn за сообщение) (PR #274).Дополнения и улучшения:
--ropsten
для упрощения синхронизации с Ropsten (PR #197, благодаря @jvirtanen);--dev-mode
(PR #256);eth_chainId
(PR #219);--node-private-key
, позволяющая указать файл nodekey отдельно от каталога данных, спасибо @peterbroadhurst за запрос) (PR #234);--banned-nodeids
, предотвращающая подключение к определённым узлам (PR #254);Технические улучшения:
java.time.Clock
вместо пользовательского интерфейса Clock (PR #220);BlockHashOperation
в качестве шаблона для других операций EVM (PR #203);EthBlockNumber
(PR #195, спасибо @jvirtanen);Web3ClientVersion
(PR #194, с благодарностью @jvirtanen);RawBlockIterator
(PR #179);Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )