Mist
Mist 0.8.6 中的事務未通過
我已將 Mist-wallet 更新到最新的0.8.6 版本,並且在使用此版本在公共網路上工作之前,我試圖在我的測試網路上執行契約。當我使用 Mist 建議的費用執行契約時,它說
看來您的交易將失敗。如果你送出它,它可能會消耗你發送的所有gas。
我什至在 Mist 中提供了最高可用費用,即
1.0541272 ether
在確認頁面上我看到提供最高費用為0.02550988 ether (121000 gas)
。但仍然在確認頁面上遇到相同的錯誤消息。
這通常是
eth.estimateGas(...)
函式呼叫檢測到的錯誤,該呼叫返回一個結果,gasUsed==gas
正如您在如何估計沒有任何輸入參數的函式的氣體?.您可以在mist.en.i18n.json#L193看到 Mist 錯誤消息:
"estimatedGasError": "It seems this transaction will fail. If you submit it, it may consume all the gas you send.",
此
estimatedGasError
錯誤消息由sendTransactionConfirmation.html#L56-L66處的程式碼顯示:{{#if transactionInvalid}} <p class="info dapp-error"> {{{i18n "mist.popupWindows.sendTransactionConfirmation.estimatedGasError"}}} </p> {{else}} ... {{/if}}
transactionInvalid
狀態由sendTransactionConfirmation.js#L259-L263處的程式碼計算:'transactionInvalid': function() { return TemplateVar.get('estimatedGas') == 'invalid' || TemplateVar.get('estimatedGas') == 0 || typeof TemplateVar.get('estimatedGas') == 'undefined'; }
您可能需要檢查您的智能合約程式碼以找出引發錯誤的原因。