Skip to content
Snippets Groups Projects
  1. Aug 15, 2022
  2. Aug 13, 2022
  3. Aug 12, 2022
  4. Aug 11, 2022
  5. Aug 10, 2022
  6. Aug 09, 2022
  7. Aug 08, 2022
  8. Aug 05, 2022
  9. Aug 04, 2022
    • Erik Johnston's avatar
    • Eric Eastwood's avatar
      Fix `@tag_args` being off-by-one (ahead) (#13452) · 860fdd90
      Eric Eastwood authored
      Fix @tag_args being off-by-one (ahead)
      
      Example:
      
      ```
      argspec.args=[
        'self',
        'room_id'
      ]
      
      args=(
        <synapse.storage.databases.main.DataStore object at 0x10d0b8d00>,
        '!HBehERstyQBxyJDLfR:my.synapse.server'
      )
      ```
      
      ---
      
      The previous logic was also flawed and we can end up in a situation like this:
      
      ```
      argspec.args=['self', 'dest', 'room_id', 'limit', 'extremities']
      
      args=(<synapse.federation.federation_client.FederationClient object at 0x7f1651c18160>, 'hs1', '!jAEHKIubyIfuLOdfpY:hs1')
      ```
      
      From this source:
      ```py
      async def backfill(
          self, dest: str, room_id: str, limit: int, extremities: Collection[str]
      ) -> Optional[List[EventBase]]:
      ```
      
      And this usage:
      ```py
      events = await self._federation_client.backfill(
          dest, room_id, limit=limit, extremities=extremities
      )
      ```
      
      which would previously cause this error:
      ```
      synapse_main | 2022-08-04 06:13:12,051 - synapse.handlers.federation - 424 - ERROR - GET-5 - Failed to backfill from hs1 because tuple index out of range
      synapse_main | Traceback (most recent call last):
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/handlers/federation.py", line 392, in try_backfill
      synapse_main |     await self._federation_event_handler.backfill(
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/logging/tracing.py", line 828, in _wrapper
      synapse_main |     return await func(*args, **kwargs)
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/handlers/federation_event.py", line 593, in backfill
      synapse_main |     events = await self._federation_client.backfill(
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/logging/tracing.py", line 828, in _wrapper
      synapse_main |     return await func(*args, **kwargs)
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/logging/tracing.py", line 827, in _wrapper
      synapse_main |     with wrapping_logic(func, *args, **kwargs):
      synapse_main |   File "/usr/local/lib/python3.9/contextlib.py", line 119, in __enter__
      synapse_main |     return next(self.gen)
      synapse_main |   File "/usr/local/lib/python3.9/site-packages/synapse/logging/tracing.py", line 922, in _wrapping_logic
      synapse_main |     set_attribute("ARG_" + arg, str(args[i + 1]))  # type: ignore[index]
      synapse_main | IndexError: tuple index out of range
      ```
      Unverified
      860fdd90
    • Patrick Cloke's avatar
      Improve comments (& avoid a duplicate query) in push actions processing. (#13455) · ec248132
      Patrick Cloke authored
      * Adds docstrings and inline comments.
      * Formats SQL queries using triple quoted strings.
      * Minor formatting changes.
      * Avoid fetching `event_push_summary_stream_ordering` multiple times
        in the same transactions.
      Unverified
      ec248132
    • Richard van der Hoff's avatar
    • reivilibre's avatar
      Faster Room Joins: prevent Synapse from answering federated join requests for... · e9e6aacf
      reivilibre authored
      Faster Room Joins: prevent Synapse from answering federated join requests for a room which it has not fully joined yet. (#13416)
      
      Unverified
      e9e6aacf
    • Nick Mills-Barrett's avatar
      Optimise async get event lookups (#13435) · 41320a05
      Nick Mills-Barrett authored
      Still maintains local in memory lookup optimisation, but does any external
      lookup as part of the deferred that prevents duplicate lookups for the same
      event at once. This makes the assumption that fetching from an external
      cache is a non-zero load operation.
      Unverified
      41320a05
    • Dirk Klimpel's avatar
    • Dirk Klimpel's avatar
Loading