Skip to content

SSS appears to burn huge amounts of bandwidth returning obsolete ops fields #18517

Description

@ara4n

Description

While hacking on aurora (EWX), I made the mistake of looking in the network inspector /sync responses and discovered that the entire roomlist was being returned in every single Simplified Sliding Sync (SSS) response in an ops field. As a result, every single long poll is burning an additional 10s of kilobytes of response re-transferring every room Id you're in(!)

However, SSS doesn't even define an ops field in the MSC - this was the main thing we removed from sliding sync when we simplified it into SSS.

So I assume this is a weird thinko throwback which can & should be removed?

Steps to reproduce

  • list the steps
  • that reproduce the bug
  • using hyphens as bullet points

Homeserver

matrix.org

Synapse Version

1.131.0rc1 (b=matrix-org-hotfixes-priv,68afa35f06)

Installation Method

Other (please mention below)

Database

postgres

Workers

Multiple workers

Platform

deb

Configuration

No response

Relevant log output

{
  "pos": "78864226/m5961565550~2.5961565552~37.5961565552_757284974_40074560_3698127888_4163553842_265824357_1495132460_11139272087_0_492038",
  "lists": {
    "all_rooms": {
      "count": 153,
      "ops": [
        {
          "op": "SYNC",
          "range": [
            0,
            152
          ],
          "room_ids": [
            "!uPnuYllGuuELYxjtma:matrix.org",
            /* ...150 room ids... */
            "!SwmvnUnaSDxPdvRevr:matrix.org",
          ]
        }
      ]
    }
  },
  "rooms": {
    "!OGEhHVWSdvArJzumhm:matrix.org": {
        ...
    }
  },
  "extensions": {
    "account_data": {
      "global": [],
      "rooms": {}
    },
    "receipts": {
      "rooms": {}
    },
    "typing": {
      "rooms": {}
    }
  }
}

Anything else that would be useful to know?

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions