Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Message retention purge jobs can incorrectly think there's no event to purge from a room #6713

@babolivier

Description

@babolivier

An interesting bug I found while investigating #6683:

When figuring out which topological token to start a purge job at, we need to do the following:

  1. Figure out a timestamp before which events will be purged
  2. Select the first stream ordering after that timestamp
  3. Select info about the first event after that stream ordering
  4. Build a topological token from that info

In some situations (e.g. quiet rooms with a short max_lifetime), there not be an event after the stream ordering at step 3, therefore we abort the purge with the error No event found.

Metadata

Metadata

Assignees

Labels

z-bug(Deprecated Label)z-p2(Deprecated Label)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions