как решить VM Exception при обработке транзакции: нет газа

я пытаюсь вызвать эту функцию с помощью web3.js в ganache testrpc, но это дает мне ошибку исключения виртуальной машины при обработке транзакции: нет газа

Я пытался увеличить газ ганаша до 999999999999, но это не сработало...

функция initialEscrowDetail (uint transactionId, адрес partyB, uint сумма, логическое условие) {

    escrowDetail[transactionId].originator=msg.sender;
    escrowDetail[transactionId].beneficiary=partyB;
    escrowDetail[transactionId].amount=amount;
    escrowDetail[transactionId].payoutCondition=condition;
    escrowDetail[transactionId].escrowCompleted=false;
}

введите описание изображения здесь

пожалуйста, поделитесь кодом
спасибо, но проблема решена. ganache testRPC — пустая трата времени при тестировании реальных децентрализованных приложений. теперь я начал частный тестовый блокчейн.
testrpc тоже частная EVM :)

Ответы (1)

Газ по умолчанию в web3, если он не указан, 90k. Так как каждая новая модификация хранилища стоила 20 тысяч, при 5 модификациях хранилища вы использовали более 100 тысяч газа.

Вы можете добавить необязательный последний параметр с газом транзакции

escrow.initialEscrowDetail(1,"0x0",200,true, { gas: 1000000 });