element-hq / element-hq/dendrite
Issues accepting invites
- Dominant language
- Go
- Stars
- 965
- Forks
- 101
- PR merge metrics
- No merged PRs in 30d
Description
*This issue was originally created by [**@0x1a8510f2**](https://github.com/0x1a8510f2) at .*
### Background information
- **Dendrite version or git SHA**: latest official master branch build
- **Monolith or Polylith?**: mono
- **SQLite3 or Postgres?**: postgres
- **Running in Docker?**: yes
- **`go version`**: n/a
- **Client used (if applicable)**: Element Android
### Description
- **What** is the problem: Accepting an invite seems to fail regularly.
- **Who** is affected: Homeserver users
- **How** is this bug manifesting: Various errors when attempting to accept room invite.
- **When** did this first appear: Not sure, a while ago
### Steps to reproduce
- receive invite from another user
- accept the invite
- notice error

EDIT 1:
Possibly relevant log line:
```
time="2022-04-10T17:02:29.955260139Z" level=error msg="Failed to join room" error="5 : r.federation.MakeJoin: Get \"matrix://[REDACTED]/_matrix/federation/v1/make_join/[REDACTED]/@0x1a8510f2:0x1a8510f2.space?ver=9&ver=7&ver=1&ver=2&ver=3&ver=4&ver=6&ver=8&ver=5&ver=org.matrix.msc3667\": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)" room_id="![REDACTED]" servers="[]" user_id="@0x1a8510f2:0x1a8510f2.space"
```
There are also a number of these but I don't think they're related:
```
time="2022-04-10T16:58:07.834277459Z" level=error msg="Failed to read src file" MediaID=[REDACTED] Origin=[REDACTED] error="image: unknown format" req.id=8Tz7a508cfWM req.method=GET req.path=/_matrix/media/r0/thumbnail/[REDACTED]/[REDACTED] src=/etc/dendrite/media_store/y/s/kS53KfVIgQBTy9gWeyAe3nKdsBZNV1Ex_aUXttQ/file
```
Contributor guide
Research direction
Start with the invite acceptance flow and the federation make_join request shown in the log. Reproduce the failure using the listed Monolith, PostgreSQL, Docker, and Element Android setup, then inspect server logs to determine why the request times out or returns an error. Done means accepting an invite succeeds reliably without the reported error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, docker, go, postgresql
- Domain
- api, backend, databases, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100