
出块数据应先区分适用网络
区块通常记录交易,并通过父区块的哈希引用连接历史。理解出块数据,需要先确定网络与字段所属层次。以太坊存在共识层区块与执行载荷,比特币则采用工作量证明机制;不同网络的时间、容量和状态字段不能直接套用同一解释。
出块间隔变化是否代表异常
以太坊开发者文档说明,时间按十二秒一个时隙划分,但验证者离线等情况可能使时隙没有区块。比特币开发者指南描述的工作量证明出块具有随机性,难度调整针对长期节奏,不能保证每次等待时间相同。

因此,查看时间间隔时,应区分时隙安排与实际出块记录。以太坊相邻区块之间出现空时隙,不等于中间必有一个已生成却被漏记的区块;比特币单次间隔偏长,也不能单独证明网络故障。

为什么同一高度会有不同区块
比特币开发者指南指出,矿工可能近乎同时产生区块,使同一高度出现竞争分支。节点最终按累计工作量选择有效链,部分竞争区块会成为陈旧区块。高度表示位置,不能作为全局唯一标识。
核对记录时,应结合区块哈希和父区块引用。同高度而哈希不同,可能对应不同分支;统计出块数量前,还需明确统计的是最终采用的链上区块,还是所有观察到的候选区块。
交易已入块为何仍显示失败
以太坊开发者文档展示了交易按区块内顺序执行的过程:发生执行回退的交易仍留在区块中,相关转账可以撤销,但交易仍消耗费用,发送方的交易计数也会增加。
所以,“被收录”与“执行成功”是不同状态。区块交易数量不能直接解释为成功转账次数,查看余额变化也不能忽略执行结果和费用。这一执行回退语义不应直接套用于比特币交易。
空块、容量和字段如何理解
比特币可以只包含必需的 coinbase 交易,不收录其他交易;这类俗称的空块仍有交易记录。以太坊没有出块的空时隙,则根本没有对应区块,两者统计含义不同。
以太坊的 gas_used 表示实际消耗的 gas,gas_limit 表示区块允许的上限,都不能直接当作字节大小或交易笔数。比较区块负载时,应统一字段口径,并区分共识层状态根与执行层状态根:名称相似,并不意味着它们承诺的是同一份状态。