Проблемы с 53-битным развертыванием контрактов с Truffle - PullRequest
0 голосов
/ 09 июля 2020

Я пытаюсь развернуть смарт-контракт с трюфелем 5.1.19 следующим образом:

pragma solidity 0.5.16;

contract Simple {

string public message;

function Hello(string memory _initialMessage) public {

    message = _initialMessage;

}

function setMessage(string memory _newMessage) public {

    message = _newMessage;

 }

}

Когда я запускаю развертывание трюфеля --network mired, у меня появляется следующая ошибка:

  Error: Number can only safely store up to 53 bits

at assert (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/bn.js/lib/bn.js:6:1)

at BN.toNumber (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/bn.js/lib/bn.js:506:1)

at Object.hexToNumber (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-utils/src/utils.js:234:1)

at Method.outputBlockFormatter (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-core-helpers/src/formatters.js:236:1)

at Method.web3.eth.getBlock.method.outputFormatter (/usr/local/lib/node_modules/truffle/build/webpack:/packages/interface-adapter/dist/shim/overloads/ethereum.js:37:1)

at Method.formatOutput (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-core-method/src/index.js:163:1)

at sendTxCallback (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-core-method/src/index.js:473:1)

at /usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-core-requestmanager/src/index.js:147:1

at /usr/local/lib/node_modules/truffle/build/webpack:/packages/provider/wrapper.js:112:1

at XMLHttpRequest.request.onreadystatechange (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/web3-providers-http/src/index.js:96:1)

at XMLHttpRequestEventTarget.dispatchEvent (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/xhr2-cookies/dist/xml-http-request-event-target.js:34:1)

at XMLHttpRequest._setReadyState (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/xhr2-cookies/dist/xml-http-request.js:208:1)

at XMLHttpRequest._onHttpResponseEnd (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/xhr2-cookies/dist/xml-http-request.js:318:1)

at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/xhr2-cookies/dist/xml-http-request.js:289:47)

at IncomingMessage.emit (events.js:203:15)

at endReadableNT (_stream_readable.js:1145:12)

at process._tickCallback (internal/process/next_tick.js:63:19)

Truffle v5.1.19 (core: 5.1.19)

Node v10.19.0

Моя конфигурация трюфеля для моей сети следующая:

 mired: {

  host: "10.xxx.xxx.xxx",

  port: 8080,             // Custom port

  network_id: "*",       // Custom network

  gas: 0,           // Gas sent with each transaction (default: ~6700000)

  gasPrice: 0x0,  // 20 gwei (in wei) (default: 100 gwei)

  from: "0x8...............",        // Account to send txs from (default: accounts[0])

  // websockets: true        // Enable EventEmitter interface for web3 (default: false)

},

При понижении версии моего трюфеля до версии 4.1.15 эта ошибка исчезает, но я не понимаю, почему с фактической версией появляется эта ошибка. Заранее спасибо

1 Ответ

0 голосов
/ 09 июля 2020

Если вы работаете с кворумом, как в моем случае. В truffle-config. js вы должны написать type: "quorum", и это решит проблему.

...