PSA: The 32-Bit Version of MongoDB Is a Toy

One thing that wasn’t clear enough from my previous post: the reason I ran into the “silent error” issue was that I’d installed the 32-bit version of MongoDB. The 32-bit version of MongoDB is limited to 2GB. In other words, it’s a toy. As many people pointed out, the Downloads page of MongoDB pretty much admits so.

The problem is, why would anyone need to go to the Downloads page? I’d installed MongoDB on my Mac (64-bit) through Homebrew, and on 32-bit Ubuntu via APT:

~$ apt-cache search mongodb
mongodb - An object/document-oriented database (metapackage)
mongodb-clients - An object/document-oriented database (client apps)
mongodb-dev - An object/document-oriented database (development)
mongodb-server - An object/document-oriented database (server package)

How would you know from those descriptions that you’re installing a toy? If you release a toy, at the very least you should show a big warning when the service starts. Let’s see:

~$ sudo service mongodb start
mongodb start/running, process 7680

How about “Hey, you just started the 32-bit version of MongoDB which is LIMITED TO TWO GIGABYTES (2GB).” Nah, it’s in the Downloads page. It reminds me of this scene from the Hitchhiker’s Guide to the Galaxy, which I quoted in the comments:

“There’s no point in acting surprised about it. All the planning charts and demolition orders have been on display at your local planning department in Alpha Centauri for 50 of your Earth years, so you’ve had plenty of time to lodge any formal complaint and it’s far too late to start making a fuss about it now. … What do you mean you’ve never been to Alpha Centauri? Oh, for heaven’s sake, mankind, it’s only four light years away, you know. I’m sorry, but if you can’t be bothered to take an interest in local affairs, that’s your own lookout. Energize the demolition beams.”

Anyway, I hope that I’ve mentioned the limitations of the 32-bit version of MongoDB enough times for people to find them through Google if needed.

For the record, I don’t hate MongoDB or think it sucks. I quite like it. I just think it’s still an immature technology. Hopefully it will become a viable alternative to time-tested databases. Maybe in ten years? 🙂

2 Replies to “PSA: The 32-Bit Version of MongoDB Is a Toy”

  1. Every other 32-bit database can of course handle more than 2 GB of data. The brain-dead decision using memory mapped files inside MongoDB is the core problem here. One of the major design flaws of MongoDB.

  2. Firstly, 32-bit is a dead end road so whether it is a toy is moot.

    Secondly, I agree that there needs to be better error messages in this case. It does appear in the log file however.

Leave a Reply

Your email address will not be published. Required fields are marked *