RocketChat / RocketChat/rocket.chat.load.tester

Load tester hanging in login function (due to client.subscribe)

Open
#8 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
11
Forks
7
Avg merge
2d 6h
Merged PRs (30d)
2

Description

Hello there

I have found an issue, apparently caused by this block in api.js, line 172

				if (!NO_SUBSCRIBE) {
					await client.subscribeUserData();
				} else if (NO_SUBSCRIBE === 'no-active') {
					await Promise.all([
						'roles',
						'webdavAccounts',
						'userData',
						// 'activeUsers'
					].map(stream => client.subscribe(stream, '')));
				}

It looks like the execution is hanging there, because if I comment that block, the project is working very well...
I understand that this block allows us to get some "callback" data after our actions, but I may need your help understanding it better, hopefully we'll manage to fix it

Thanks in advance

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with api.js at line 172 and reproduce the load tester hanging during login with the subscription block enabled, then compare it with the block commented out. Trace client.subscribeUserData() and the subscribe calls to identify where execution stops. Done means login completes without hanging while the intended callback data remains available.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
api, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.