denodrivers / denodrivers/redis

test: `pubsub` > `retry` seems flaky

Open
#320 0 comments 0 reactions 0 assignees View on GitHub
bug test
Dominant language
TypeScript
Stars
465
Forks
48
Avg merge
1d 2h
Merged PRs (30d)
5

Description

```shell
retry ... FAILED(1s)
error: ConnectionReset: Connection reset by peer (os error 104)
const rr = await this.#rd.read(this.#buf.subarray(this.#w));
^
at async read (deno:ext/net/01_net.js:28:19)
at async BufReader.#fill (https://deno.land/std@0.149.0/io/buffer.ts:323:18)
at async BufReader.peek (https://deno.land/std@0.149.0/io/buffer.ts:654:9)
at async readReply (file:///home/runner/work/redis/redis/protocol/reply.ts:13:15)
at async RedisConnection.sendCommand (file:///home/runner/work/redis/redis/connection.ts:111:19)
at async RedisConnection.reconnect (file:///home/runner/work/redis/redis/connection.ts:183:7)
at async RedisSubscriptionImpl.receive (file:///home/runner/work/redis/redis/pubsub.ts:118:11)
at async Promise.all (index 1)
at async Object. (file:///home/runner/work/redis/redis/tests/commands/pubsub.ts:125:5)
at async Function.runTest (https://deno.land/std@0.149.0/testing/_test_suite.ts:358:7)
```

https://github.com/denodrivers/redis/runs/7499043692?check_suite_focus=true

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with tests/commands/pubsub.ts around the retry test at line 125, then inspect pubsub.ts, connection.ts, and protocol/reply.ts using the reported stack trace. Reproduce the failure from the linked GitHub Actions run and determine why the retry path surfaces ConnectionReset; done means the test no longer flakes while preserving the intended retry behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
redis, typescript
Domain
backend, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.