RocketChat / RocketChat/Rocket.Chat
User profile username change makes server unresponsive
Open
@ggazzo is already working on this.
Since Aug 13, 2018.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
When a user changes their username, the service will hang and/or crash hanging all clients connected to the service
Steps to reproduce:
- Go to User>My Account:
- Click on Profile
- Change Username field
- Click "Save Changes"
Expected behavior:
User name changed and saved to database
Actual behavior:
Clicking on save changes just sits and spins. Server no longer responds for the user changing their name, nor any other user connected. Seems to wait for a time out, approx 5 mins later, server starts responding again.
Server Setup Information:
- Version of Rocket.Chat Server: 0.65.2
- Operating System: Ubuntu 16.04
- Deployment Method: docker
- Number of Running Instances: 1
- DB Replicaset Oplog:
- NodeJS Version:
- MongoDB Version:
Additional context
Server was populated from a slack migration
Relevant logs:
Server log during name change:
API ➔ debug Success { statusCode: 200, body: { success: true } }
Meteor ➔ method getAvatarSuggestion -> userId: HXTT4zSKR6yFwcgNa , arguments: {}
Meteor ➔ method checkUsernameAvailability -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': 'zenjabba1' }
Meteor ➔ method saveUserProfile -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': { username: 'zenjabba1' }, '1': {} }
Meteor ➔ method setUsername -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': 'zenjabba1' }
API v1 Logger ➔ debug POST: /api/v1/subscriptions.read
Meteor ➔ method readMessages -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': 'GENERAL' }
API ➔ debug Success { statusCode: 200, body: { success: true } }
API v1 Logger ➔ debug POST: /api/v1/subscriptions.read
Meteor ➔ method readMessages -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': 'GENERAL' }
API ➔ debug Success { statusCode: 200, body: { success: true } }
API v1 Logger ➔ debug POST: /api/v1/subscriptions.read
Meteor ➔ method readMessages -> userId: HXTT4zSKR6yFwcgNa , arguments: { '0': 'GENERAL' }
API ➔ debug Success { statusCode: 200, body: { success: true } }
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.