demo.pool_reserves.eth:类型为 Block State,业务字段为 id: ADDRESS、reserve_usdc: UINT256、reserve_weth: UINT256。
配置触发源和计算函数
在demo 中创建 Notebook,输入下面的脚本。事件表中的 Sync 事件触发储备读取;SOURCE_ROW 把当前事件作为函数参数。
函数中需要的 SDK 在函数体内导入。示例使用事件的
block_id 查询合约,保证储备值属于该事件对应的区块状态。
运行历史回填
保存脚本,选择计算规格并点击 Run。backfill() 的起止高度都包含在处理范围内;本例处理十个区块。
完成后查看 Notebook 输出:本例处理 10 个区块、写入 2 条记录。再打开目标表核对记录和已处理区间。
声明依赖表
若计算函数还会读取另一个区块状态表,把该表加入depends。例如,读取一个自建区块状态表时:
trigger 替换为已配置的 Trigger,两个表 ID 替换为实际表。依赖表不会自动成为函数参数,也不会单独触发计算;它要求对应高度的数据先准备好。函数仍需显式读取该表。
持续更新
在小范围回填验证通过后,将脚本最后一行改为:update() 根据目标表的起始高度和已处理区间补齐缺口,然后持续处理新事件。
