Значения «gas_burnt» и «tokens_burnt» в квитанции о возврате не равны нулю и не совпадают.
Согласно документации , и в квитанции о возврате средств имеют нулевое значение:
{
"block_hash": "Gm6TFS1ZxmA45itVj8a7vE8yJF8V5hXeNF1EhEVr7GVS",
"id": "7NMpF9ZGwSj48bpvJK2xVobJkTasEkakazTKi2zotHR4",
"outcome": {
"executor_id": "near",
"gas_burnt": 0,
"logs": [],
"metadata": { "gas_profile": null, "version": 1 },
"receipt_ids": [],
"status": { "SuccessValue": "" },
"tokens_burnt": "0"
},
"proof": []
}
Однако я совершил транзакцию для создания учетной записи, и эти значения не равны нулю.
near tx-status mlibre.testnet:v3eawe5UJmMBvNQe2rgoKEuS92HfXMtM5BLLRcBix39
The gas_burnt
является223182562500
иtokens_burnt
равно 0. что это значит? и почему так?
{
block_hash: 'BXkhJFVsWcDgaFznMTwk674WvzokS62pfPL879EbrmAN',
id: 'EXNe4EKTFSm75TrGnvtUhMTqxsoUPDPYw7jEoDi3LweL',
outcome: {
executor_id: 'mlibre.testnet',
gas_burnt: 223182562500,
logs: [],
metadata: { gas_profile: [], version: 3 },
receipt_ids: [],
status: { SuccessValue: '' },
tokens_burnt: '0'
},
proof: [
{
direction: 'Right',
hash: '97J5UUmsVCKeThLf2RxQ4ZkjySdNvVzaUsRrh1YJQZEn'
},
{
direction: 'Left',
hash: '5HqirRFCGCpNF3A8bE9v9xLX8ZzaByPsiGPdoWraEZPU'
},
{
direction: 'Right',
hash: 'HU97NYSfmXZftzDakJmcYc9xy4ZS2m8LWpmPSuG9asZ9'
}
]
}
1 ответ
Этот фрагмент в документации устарел.tokens_burnt
всегда будет нулевым для квитанций о возмещении, ноgas_burnt
все равно будет учитываться во избежание DoS-атак из-за того, что слишком много квитанций с нулевым газом упаковываются в один блок: https://github.com/near/nearcore/pull/4405