Skip to content
Snippets Groups Projects
  • David Robertson's avatar
    60453315
    Always add local users to the user directory (#10796) · 60453315
    David Robertson authored
    
    It's a simplification, but one that'll help make the user directory logic easier
    to follow with the other changes upcoming. It's not strictly required for those
    changes, but this will help simplify the resulting logic that listens for
    `m.room.member` events and generally make the logic easier to follow.
    
    This means the config option `search_all_users` ends up controlling the
    search query only, and not the data we store. The cost of doing so is an
    extra row in the `user_directory` and `user_directory_search` tables for
    each local user which
    
    - belongs to no public rooms
    - belongs to no private rooms of size ≥ 2
    
    I think the cost of this will be marginal (since they'll already have entries
     in `users` and `profiles` anyway).
    
    As a small upside, a homeserver whose directory was built with this
    change can toggle `search_all_users` without having to rebuild their
    directory.
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>
    Always add local users to the user directory (#10796)
    David Robertson authored
    
    It's a simplification, but one that'll help make the user directory logic easier
    to follow with the other changes upcoming. It's not strictly required for those
    changes, but this will help simplify the resulting logic that listens for
    `m.room.member` events and generally make the logic easier to follow.
    
    This means the config option `search_all_users` ends up controlling the
    search query only, and not the data we store. The cost of doing so is an
    extra row in the `user_directory` and `user_directory_search` tables for
    each local user which
    
    - belongs to no public rooms
    - belongs to no private rooms of size ≥ 2
    
    I think the cost of this will be marginal (since they'll already have entries
     in `users` and `profiles` anyway).
    
    As a small upside, a homeserver whose directory was built with this
    change can toggle `search_all_users` without having to rebuild their
    directory.
    
    Co-authored-by: default avatarRichard van der Hoff <1389908+richvdh@users.noreply.github.com>