graphprotocol / graphprotocol/graph-node

[Bug] Review reconnect logic for firehose

未关闭
#5,487 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

bug Stale
主要语言
Rust
星标
3.2k
派生
1.1k
平均合并
4 天 1 小时
30 天内合并 PR
1

描述

Bug report

When graph-node connects to firehose it may be provided a DNS name that resolves to multiple IPv4 and/or IPv6 addresses.

graph-node should explicitly try each of these available addresses. Of course if IPv6 is not configured in the networking stack, it would not try those. But if there are multiple IPv4 addresses, it should try each one in turn.

It appears, anecdotally, that graph-node does not specifically rotate between IPv4 addresses returned and gets stuck connecting to a single IPv4 address.

There are no logs for this, it is based on observed behaviour.

Relevant log output

No response

IPFS hash

No response

Subgraph name or link to explorer

No response

Some information to help us out
  • Tick this box if this bug is caused by a regression found in the latest release.
  • Tick this box if this bug is specific to the hosted service.
  • I have searched the issue tracker to make sure this issue is not a duplicate.
OS information

None

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先跟踪 graph-node 的 firehose 连接,以及它如何处理解析为多个 IPv4 和 IPv6 地址的 DNS 名称。使用包含多个地址的 DNS 结果重现或检查行为,包括没有 IPv6 的环境。完成的标准是依次尝试可用地址,而不是一直卡在某一个 IPv4 地址上。

由索引模型根据 Issue 内容生成。

评估

技术栈
rust
领域
networking
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。