Skip to content

Release for version 3.1.0

Compare
Choose a tag to compare
@luleigreat luleigreat released this 19 Oct 07:40
· 728 commits to develop since this release

新增接口

  1. 新增加获取交易证明的接口 tx_merkle_proof 与验证接口tx_merkle_verify,用来验证交易在链上存在
  2. 增加tx_result接口,只获取交易在链上的共识结果

配置项

  1. 增加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
  1. 支持同步某账户下所有表
[sync_tables]
#表的发行帐户地址(只同步非加密表)
z9VF7yQPLcKgUoHwMbzmQBjvPsyMy19ubs 
#表的发行帐户地址 解密的私钥(加密表与非加密表都同步)
z9VF7yQPLcKgUoHwMbzmQBjvPsyMy19ubs xxWFBu6veVgMnAqNf6YFRV2UENRd3
  1. 一张表一个SLE的特性,新特性下一个账户下不再有只能建100张表的限制
[features]
TableSLEChange

共识优化

修改pop共识

  • init_time阶段只收集最高区块,init_time过后去要最高区块
  • init_time阶段要的区块,后面5次超时后不回滚到validated_ledger
  • 调整viewChange机制,修改达不成共识后一直abnormal的问题

性能优化

  • 解决数据量大时查询交易详情性能差的问题
  • 解决上链完后再进行表同步,内存增涨过快的问题
  • 解决上链完后再进行表同步,一张表同步不完其它表完全不同步的问题

功能优化

  1. 智能合约交易,合约执行过程中的异常可以在交易结果中返回
  • 原来只能返回tefCONTRACT_REVERT_INSTRUCTION错误码,错误信息是这个错误码对应的信息
  • 现返回tefCONTRACT_REVERT_INSTRUCTION错误码,错误信息是合约中require语句中自定义的错误
  1. 建表时对多个字段创建索引,之前是创建联合索引,现改为为每个加'index'关键字的字段单独创建一个索引
  2. 新增预编译合约功能,以及表的预编译合约接口
  3. 增加对交易时间、交易所在区块号自填充字段的支持