RocketChat / RocketChat/Rocket.Chat

NOTE: Forcing MongoDB 5.0 Changes Minimum Requirements (Will Require AVX Instruction support).

Open
#29,641 9 comments 8 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

I'm not sure if RocketChat is aware that MongoDB 5.0 and greater requires a CPU with the AVX instruction so I'd like to make sure the team is aware of the ramifications of dropping MongoDB 4.4 support with the next major release of RocketChat (and is in a depreciated status with RocketChat 6.x).

RocketChat's documentation seems to pride itself on running on minimal hardware but this change to requiring MongoDB 5.0+ will be cutting off many inexpensive devices.

In my own use-case, I run RocketChat for my family and a few friends, 10 users tops with most use from 2 people and a bot. It's running on an older Synology DS1817+ model in a docker container along with MongoDB (also in a docker container). The DS1817+ uses an Intel Atom C2538 CPU which does not support the AVX instruction and thus will be unable to upgrade to MongoDB 5 and also RocketChat 7.

While I may upgrade to a newer Synology model (while I could afford it, they are not trivially cheap), at this time my only reason to do so would be to run RocketChat 7 and, to be honest, I am far more likely to stay at the final RocketChat 6 - or look for an alternative and I want to bring this to the RocketChat team's attention because I am probably not the only person in this boat.

The Intel Atom C2538's procinfo (NOTE: there are 4 cores so this repeats 3 more times with a different processor number, I've omitted those for brevity.) Not the most amazing CPU but it still does the job, except for MongoDB 5+.

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 77
model name	: Intel(R) Atom(TM) CPU  C2538  @ 2.40GHz
stepping	: 8
microcode	: 0x121
cpu MHz		: 2400.000
cache size	: 1024 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 4
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 11
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch arat epb invpcid_single tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
bogomips	: 4800.19
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:
References
MongoDB

The MongoDB Production Notes document almost hides the new requirement near the top of the current production notes.

MongoDB 5.0 requires use of the AVX instruction set, available on select Intel and AMD processors.

Notes
  • Edited to include references and improved clarity.

Contributor guide

Open the contributing guide

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 by reviewing the MongoDB Production Notes reference and the Rocket.Chat 7 and MongoDB 5 compatibility context described in the issue. The issue does not name a file, test, documentation page to update, or acceptance criteria, so the scope and definition of done require clarification from the maintainers.

Written by the indexing model from the issue text.

Assessment

Tech stack
mongodb
Domain
databases
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.