Skip to content
Snippets Groups Projects
  1. Nov 27, 2024
  2. Nov 26, 2024
  3. Nov 25, 2024
    • Erik Johnston's avatar
      Fix up logic for delaying sending read receipts over federation. (#17933) · 3943d2fd
      Erik Johnston authored
      For context of why we delay read receipts, see
      https://github.com/matrix-org/synapse/issues/4730.
      
      Element Web often sends read receipts in quick succession, if it reloads
      the timeline it'll send one for the last message in the old timeline and
      again for the last message in the new timeline. This caused remote users
      to see a read receipt for older messages come through quickly, but then
      the second read receipt taking a while to arrive for the most recent
      message.
      
      There are two things going on in this PR:
      1. There was a mismatch between seconds and milliseconds, and so we
      ended up delaying for far longer than intended.
      2. Changing the logic to reuse the `DestinationWakeupQueue` (used for
      presence)
      
      The changes in logic are:
      - Treat the first receipt and subsequent receipts in a room in the same
      way
      - Whitelist certain classes of receipts to never delay being sent, i.e.
      receipts in small rooms, receipts for events that were sent within the
      last 60s, and sending receipts to the event sender's server.
      - The maximum delay a receipt can have before being sent to a server is
      30s, and we'll send out receipts to remotes at least at 50Hz (by
      default)
      
      The upshot is that this should make receipts feel more snappy over
      federation.
      
      This new logic should send roughly between 10%–20% of transactions
      immediately on matrix.org.
      3943d2fd
    • dependabot[bot]'s avatar
      93cc9550
  4. Nov 22, 2024
  5. Nov 20, 2024
  6. Nov 19, 2024
  7. Nov 18, 2024
  8. Nov 14, 2024
  9. Nov 13, 2024
  10. Nov 12, 2024
  11. Nov 11, 2024
Loading