MystenLabs / MystenLabs/MemWal

bug: Intermittent network connection timeouts to aggregators/publishers in Node.js

Open
#331 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
107
Forks
37
Avg merge
3d 12h
Merged PRs (30d)
86

Description

Description

When sending requests to the Sui RPC nodes or Walrus aggregators/publishers, Node.js connection handlers trigger intermittent network timeouts. This occurs because the default Node resolver attempts IPv6 resolution first, which fails on systems that only have configured IPv4 routing.

Steps to Reproduce
  1. Execute client operations (such as writeBlob or fetchMemory) on a standard Node.js environment.
  2. Run on a network config with incomplete/disabled IPv6 routing.
  3. Note connection timeouts unless dns.setDefaultResultOrder('ipv4first') is manually called.
Expected Behavior

The SDK client should include automatic fallback retry/resolution logic (IPv4 first or concurrent dual-stack resolution) to ensure reliable connections out-of-the-box.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Node.js connection handling used by client operations such as writeBlob and fetchMemory, then reproduce the timeout on a network with incomplete IPv6 routing. Check how DNS resolution is configured and verify the change by confirming requests succeed without manually calling dns.setDefaultResultOrder('ipv4first').

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
api, networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.