element-hq / element-hq/synapse

Synapse sends events over `/sync` in rooms that are mid-faster-join, to clients that don't support membership lazy-loading

Open
#17,706 0 comments 0 reactions 0 assignees View on GitHub
A-Sync T-Defect
Dominant language
Python
Stars
4.6k
Forks
600
Avg merge
5d 22h
Merged PRs (30d)
51

Description

### Description

Synapse appears to send new events down sync for clients that don't support lazy loading.
This leads to clients having rooms that contain no state events.

Example in nheko:
![image](https://github.com/user-attachments/assets/58ecaeb1-3f92-42b5-a570-a0d3c1538cc5)
![image](https://github.com/user-attachments/assets/1ede7e09-120c-47b7-8f4d-ca6d79be55c4)

### Steps to reproduce

- Join one or more "large" rooms (~150-200 in my case)
- Notice new "empty rooms" appearing in client as people send messages, join/leave, ...

### Homeserver

rory.gay

### Synapse Version

1.114.0

### Installation Method

Other (please mention below)

### Database

PostgreSQL 16.4, single db, no portdb/restores

### Workers

Multiple workers

### Platform

NixOS, VM with 256GiB of RAM and 14 threads off an AMD Epyc 7262
(Synapse from nixpkgs/master)

### Configuration

Presence: on
Message retention: not configured
Experimental features: MSCs 2815, 3026, 3266, 3916, 3823, 4151

### Relevant log output

```shell
None, sync workers only appear to log "Processed request" (CS-API) and "Received response" (replication), no warnings emitted (INFO loglevel)
```

### Anything else that would be useful to know?

*This is a single person homeserver!* This may not be reproducible if the homeserver already has a local copy of the room.

Please probe me on Matrix ([matrix:u/emma:rory.gay](matrix:u/emma:rory.gay)) if more information is needed, as I don't actively monitor GitHub or email.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.