Как оценить рост расходов на хранение после обновления контракта NEAR
Новое поле в каждой записи меняет сумму, которую контракт должен удерживать для хранения. Дополнительную потребность можно оценить по фактическому изменению числа байтов на границе миграции.
Снимите объём до и после исполнения
Вызовите query с view_account для родителя блока миграции и для самого блока. Вычтите значения storage_usage. Другие записи в том же блоке также входят в разницу: учтите их при выделении влияния миграции.
{
"jsonrpc": "2.0",
"id": 1,
"method": "EXPERIMENTAL_protocol_config",
"params": {
"block_id": "BLOCK_HASH"
}
}
Пересчитайте дополнительные байты по активной конфигурации
Подставьте хеш блока после миграции и прочитайте runtime_config.storage_amount_per_byte. Умножьте прирост в байтах на цену в целых числах. При приросте 800 и цене 10000000000000000000 yoctoNEAR дополнительно потребуется 8000000000000000000000 yoctoNEAR, или 0,008 NEAR.
Это изменение требуемого обеспечения хранилища. Расход газа на исполнение относится к стоимости транзакции и учитывается отдельно.