Hyperledger besu с включенной ошибкой разрешений
Я использую сеть быстрого запуска, предоставленную Hyperledger besu, и хочу протестировать и посмотреть, как управление разрешениями работает с децентрализованным приложением управления разрешениями. Я использую этот репозиторий: https://github.com/bretthenderson/besu-quickstart . Поэтому, когда я запускаю скрипт run-permissioning.sh для создания dapp и запуска тестовой сети, все работает нормально, и сеть успешно запускается, а затем, когда я запускаю сценарий run-permissioning-dapp.sh работает нормально, компилирует и развертывает смарт-контракты с разрешениями, затем перезапускает сеть с включенными разрешениями, но после этого происходит сбой контейнера загрузочного узла с этими журналами:
2021-04-02 10:25:11.294+00:00 | main | INFO | KeyPairUtil | Loaded public key 0xc1979a8a48693db804316b5acebe35e11731e1fb1c9c21ff7268ab25db6f6e03390a429b83cf0ec0865a7205f2669ec1ace652a3def11e2e01571c74939cbe22 from /opt/besu/keys/key
Setting logging level to INFO
2021-04-02 10:25:42.930+00:00 | main | INFO | AbstractAltBnPrecompiledContract | Using LibEthPairings native alt bn128
2021-04-02 10:25:55.841+00:00 | main | INFO | SECP256K1 | Using native secp256k1
2021-04-02 10:25:55.933+00:00 | main | INFO | Besu | Starting Besu version: besu/v21.1.3/linux-x86_64/oracle_openjdk-java-11
2021-04-02 10:25:59.261+00:00 | main | WARN | Besu | --min-gas-price has been ignored because --miner-enabled was not defined on the command line.
2021-04-02 10:26:00.299+00:00 | main | INFO | Besu | Static Nodes file = /opt/besu/data/static-nodes.json
2021-04-02 10:26:00.322+00:00 | main | INFO | StaticNodesParser | StaticNodes file /opt/besu/data/static-nodes.json does not exist, no static connections will be created.
2021-04-02 10:26:00.351+00:00 | main | INFO | Besu | Connecting to 0 static nodes.
2021-04-02 10:26:00.368+00:00 | main | INFO | Besu | Security Module: localfile
2021-04-02 10:26:00.661+00:00 | main | INFO | DatabaseMetadata | Lookup database metadata file in data directory: /opt/besu/data
2021-04-02 10:26:01.646+00:00 | main | INFO | RocksDBKeyValueStorageFactory | Existing database detected at /opt/besu/data. Version 1
2021-04-02 10:26:03.790+00:00 | main | INFO | KeyPairUtil | Loaded public key 0xc1979a8a48693db804316b5acebe35e11731e1fb1c9c21ff7268ab25db6f6e03390a429b83cf0ec0865a7205f2669ec1ace652a3def11e2e01571c74939cbe22 from /opt/besu/keys/key
2021-04-02 10:26:04.310+00:00 | main | INFO | ProtocolScheduleBuilder | Protocol schedule created with milestones: [Petersburg: 0]
ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8ANTLR Tool version 4.7.1 used for code generation does not match the current runtime version 4.8ANTLR Runtime version 4.7.1 used for parser compilation does not match the current runtime version 4.8
Error: node permissioning contract at address 0x0000000000000000000000000000000000009999 does not match the expected interface version 1
Я нигде не могу найти ничего об этой ошибке, так как у Hyperledger besu очень маленькое сообщество...
2 ответа
Исправление проблемы заключается в том, чтобы добавить
--permissions-nodes-contract-version=2
в вашу командную строку besu.
Это связано с тем, что в версии 2.0.0 репозитория разрешений смарт-контрактов мы изменили интерфейс в соответствии с журналом изменений https://github.com/ConsenSys/permissioning-smart-contracts/releases/tag/v2.0.0 . Он находится в документации besu. здесь https://besu.hyperledger.org/en/stable/HowTo/Limit-Access/Specify-Perm-Version/ , но я уже сообщал об этой проблеме, и она была исправлена в документации учебника по разрешению в цепочке.
вы можете найти более подробную информацию здесь
я столкнулся с той же проблемой, даже с--permissions-nodes-contract-version=2
добавлен, проверьте мой пост здесь: https://ethereum.stackexchange.com/questions/132573/hyperledger-besu-onchain-permissioning-error