Skip to content

Member list silently truncated at 100 — "Showing N of N" shows array length instead of actual total #1286

@deepak0x

Description

@deepak0x

getChannelMembers() in EmbeddedChatApi.ts:1082 calls /channels.members?roomId=X without count or offset parameters. Rocket.Chat defaults to returning 100 results per page, so rooms with more than 100 members silently lose the rest.

The Members sidebar then displays "Showing 100 of 100" because RoomMember.js:166 uses filteredMembers.length for both numbers — the actual usersCount from the /rooms.info response (already stored in channelInfo via Zustand) is never read.

This also affects the mention autocomplete (@ popup in ChatInput), which only searches the first 100 members.

Steps to reproduce:

  1. Join or create a room with more than 100 members
  2. Open the Members sidebar
  3. Observe "Showing 100 of 100" even though the room has more members
  4. Try to @-mention a user beyond the first 100 — they won't appear in the autocomplete

Expected behavior:

The sidebar should show "Showing 100 of 350" (using channelInfo.usersCount for the total) and ideally paginate or fetch all members.

Actual behavior:

Shows "Showing 100 of 100". No indication that members are missing. Mention autocomplete can't find users beyond the first page.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions