conversejs/converse.js

When the logged-in user has over 8000 rosters, rosters are not being retrieved.

Opened this issue · 2 comments

udaysv commented

Describe the bug
When the login user has more than 8000 contacts, contacts retrieving is getting empty.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'https://conversejs.org/fullscreen.html'
  2. Login with the user who has more contacts. After login success, wait for the contacts list in the control box.
  3. No contacts were received for a longer time. After some time web page will get an unresponsive alert.
  4. Error will be displayed with Aw Snap! in the web page.

Expected behavior
Contacts should be fetched

Environment (please complete the following information):

  • Browser [e.g. Chrome, Firefox]

Console output when running as debug? Which browser did you test? All do the same? Server logs?

udaysv commented

Browser
Chrome

Observation
After receiving the rosters from the XMPP server and generating models to save in the database, the @converse/skeletor npm is unable to store in IndexedDB, resulting in an "out-of-memory" crash. It utilizes the entire heap memory of RAM, leading to a crash of the browser page.

Screenshots
converse-log

converse_out_of_memory_log converse_dashboard converse_error converse_login converse_console_2