element-hq / element-hq/dendrite

Dendrite doesn't /federation/send properly to Construct.

Open
#1,941 3 comments 0 reactions 0 assignees View on GitHub
C-Federation T-Defect
Dominant language
Go
Stars
965
Forks
101
PR merge metrics
No merged PRs in 30d

Description

*This issue was originally created by [**@su-ex**](https://github.com/su-ex) at .*

### Background information

- **Dendrite version or git SHA**: any
- **Monolith or Polylith?**: any
- **SQLite3 or Postgres?**: any
- **Running in Docker?**: any
- **`go version`**: any

### Description

### Steps to reproduce

Have a room with a Dendrite and a construct server.

It seems Dendrite just goes into backoff:
```
level=debug msg="Sending transaction \"1626775843222-5\" containing 0 PDUs, 1 EDUs" func="nextTransaction\n\t" file=" [destinationqueue.go:409]" server_name=some.dendrite.server
level=warning msg="Backing off \"construct.supercable.onl\" for 15.868026157s" func="backgroundSend\n\t" file=" [destinationqueue.go:301]"
```

This means construct will only get events from Dendrite through backfill via other servers.

Contributor guide

Open the contributing guide

Research direction

Reproduce with a room spanning Dendrite and a Construct server, then inspect the federation send path around destinationqueue.go:301 and destinationqueue.go:409, including backgroundSend and nextTransaction. Use the reported backoff logs to identify why /federation/send fails; done means Construct receives events directly rather than only through backfill.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, 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.