lbryio / lbryio/lbry-sdk

DHT response comes from different ip/port

Open
#1,878 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area: DHT priority: low type: bug
Dominant language
Python
Stars
7.2k
Forks
493
PR merge metrics
No merged PRs in 30d

Description

## The Issue
See these a couple times per day. I believe this used to happen even before the async io rewrite.

```future: ._ping() done, defined at lbrynet\dht\protocol\protocol.py:214> exception=RemoteException('response from 107.152.104.233:57276, expected 73.119.232.99:4444')>
Traceback (most recent call last):
File "lbrynet\dht\protocol\protocol.py", line 219, in _ping
File "lbrynet\dht\protocol\protocol.py", line 136, in ping
File "lbrynet\dht\protocol\protocol.py", line 523, in send_request
File "asyncio\tasks.py", line 416, in wait_for
lbrynet.dht.error.RemoteException: response from 107.152.104.233:57276, expected 73.119.232.99:4444
```

## System Configuration

- LBRY Daemon version:
- LBRY App version:
- LBRY Installation ID:
- Operating system:

## Anything Else

## Screenshots

## Internal Use

### Acceptance Criteria
1.
2.
3.

### Definition of Done
- [ ] Tested against acceptance criteria
- [ ] Tested against the assumptions of user story
- [ ] The project builds without errors
- [ ] Unit tests are written and passing
- [ ] Tests on devices/browsers listed in the issue have passed
- [ ] QA performed & issues resolved
- [ ] Refactoring completed
- [ ] Any configuration or build changes documented
- [ ] Documentation updated
- [ ] Peer Code Review performed

Contributor guide

Open the contributing guide

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 in lbrynet/dht/protocol/protocol.py at the _ping, ping, and send_request locations shown in the traceback. Trace why the response endpoint differs from the expected endpoint, then verify the reported mismatch is handled correctly and add or update tests before confirming the project builds without errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
distributed-systems, networking
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.