Release for version 3.1.0
新增接口
- 新增加获取交易证明的接口
tx_merkle_proof
与验证接口tx_merkle_verify
,用来验证交易在链上存在 - 增加tx_result接口,只获取交易在链上的共识结果
配置项
- 增加ledger_tx_tables配置项,可配置节点是否写Transactions表
[ledger_tx_tables]
use_tx_tables = 1 #是否向transaction.db中存储交易内容,默认为1
save_tx_binary = 0 #Transactions表中是否存储交易详情,默认为0
use_trace_table = 1 #是否使用TraceTransactions表,默认为1
- 支持同步某账户下所有表
[sync_tables]
#表的发行帐户地址(只同步非加密表)
z9VF7yQPLcKgUoHwMbzmQBjvPsyMy19ubs
#表的发行帐户地址 解密的私钥(加密表与非加密表都同步)
z9VF7yQPLcKgUoHwMbzmQBjvPsyMy19ubs xxWFBu6veVgMnAqNf6YFRV2UENRd3
- 一张表一个SLE的特性,新特性下一个账户下不再有只能建100张表的限制
[features]
TableSLEChange
共识优化
修改pop共识
- 在
init_time
阶段只收集最高区块,init_time
过后去要最高区块 init_time
阶段要的区块,后面5次超时后不回滚到validated_ledger
- 调整
viewChange
机制,修改达不成共识后一直abnormal
的问题
性能优化
- 解决数据量大时查询交易详情性能差的问题
- 解决上链完后再进行表同步,内存增涨过快的问题
- 解决上链完后再进行表同步,一张表同步不完其它表完全不同步的问题
功能优化
- 智能合约交易,合约执行过程中的异常可以在交易结果中返回
- 原来只能返回tefCONTRACT_REVERT_INSTRUCTION错误码,错误信息是这个错误码对应的信息
- 现返回tefCONTRACT_REVERT_INSTRUCTION错误码,错误信息是合约中require语句中自定义的错误
- 建表时对多个字段创建索引,之前是创建联合索引,现改为为每个加'index'关键字的字段单独创建一个索引
- 新增预编译合约功能,以及表的预编译合约接口
- 增加对交易时间、交易所在区块号自填充字段的支持