微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在图节点中部署平衡器子图时,如何解决trace_filter不存在的问题?

如何解决在图节点中部署平衡器子图时,如何解决trace_filter不存在的问题?

我已经成功设置graph-node。之后,我试图在我的图节点中部署balancer-subgraph

子图部署过程:

  1. 克隆
git clone git@github.com:balancer-labs/balancer-subgraph.git
  1. 安装依赖项
yarn
  1. 生成图形代码
yarn codegen
  1. 创建本地节点
yarn create:local
  1. 本地部署
yarn deploy:local

部署后,在图形节点日志中出现如下错误

Aug 21 13:15:36.545 ERRO Subgraph instance Failed to run: RPC error: Error { code: MethodNotFound,message: "the method trace_filter does not exist/is not available",data: None },code: SubgraphSyncingFailure,id: QmTMsUH9rUVjpBTDRNuUcNHM3rT9ZZmxkDmTYmyKUpzEJn,subgraph_id: QmTMsUH9rUVjpBTDRNuUcNHM3rT9ZZmxkDmTYmyKUpzEJn,component: SubgraphInstanceManager
Aug 21 13:15:41.071 INFO Syncing 1 blocks from Ethereum.,code: BlockIngestionStatus,blocks_needed: 1,blocks_behind: 1,latest_block_head: 10703787,current_block_head: 10703786,network_name: mainnet,component: BlockIngestor

获取节点版本

Geth
Version: 1.9.9-stable
Git Commit: 017449971e1e9e220efcd97d3313a0e27f47003b
Git Commit Date: 20191206
Architecture: amd64
Protocol Versions: [64 63]
Go Version: go1.13.5
Operating System: linux
GOPATH=/home/ubuntu/work
GOROOT=/usr/local/go

我需要启用任何一种API才能成功部署Balancer子图吗?

解决方法

Geth节点到目前为止尚不支持trace_filter方法。对于某些子图(例如balancer-subgraph),当尝试将其部署到graph-node时,它将尝试调用此方法trace_filter。但是由于geth节点不支持API,graph-node为此遇到了错误

参考:Geth JSON-RPC不支持trace_filter API。 单击this链接,按geth节点查找受支持的API。

要完全支持图节点,需要使用奇偶校验节点。 This已通过奇偶校验支持API

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。