So, regardless of minor release milestone (non-LTS release), I keep them baking…
New mongodb 3.2.x version (3.2.21) was recently released, and I’ve built new packages for ubuntu 18.04.
Also I’ve spotted that previous packages of version 3.2.20 have some annoying behaviour, meaning mongodb server starts to occupy cpu 100% after some time doing useless “usleep” loops (pretty much doing nothing waking up several times a second to do nothing again).
I don’t know with what this is related, but this time to build packages I’ve gathered all the knowledge around the internet how to do that additionally to my researches. There are few more tricks included building those packages now including some armhf specific compiler and linker options and I don’t see that strange behaviour anymore. If you had problems with packages from the previous post, – upgrade. If you just stumbled upon this post – install 3.2.21, it is better.
Not getting any easier, but I keep building mongodb armhf packages for latest Ubuntu distros coming out.
This time the mongodb version is the latest 3.2.20 from 8 May 2018, the latest one available, built for Ubuntu 18.04 LTS.
Package is built using specs from the base MongoDB of Ubuntu 18.04 (3.6) with all the patches required applied on top, to make it working on 32-bit armhf.
For those of you who came here through search systems looking for mongodb armhf, I build mongodb server 32-bits armhf packages since Ubuntu 17.04, because official Ubuntu doesn’t do that anymore. This is for my 32-bit Odroid-XU4, more than capable of running things like mongo, while I use it as my Ubiquiti Unifi controller. Which requires mongodb as dependancy. It all works fine for me since a year already, so you’re welcome to download those .deb’s if you need.
Updated version is available: Ubuntu 18.04 Bionic Beaver armhf MongoDB packages (updated to mongodb 3.2.21)
So, half a year passed, there is new Ubuntu version. And it does go further away from the armhf support regarding MongoDB.
I still use my -XU4 armv7l board for unifi controller, which still depend on mongodb package.
So here they are, mongodb armhf packages for Ubuntu 17.10.
This time it took me three days to build it, the Ubuntu version of mongodb source cannot be even built anymore on 17.10 even using armhf patches. Which is from one side bad, from the other side I took latest MongoDB 3.2.17 from the official source repository, which is only 28 days old. So, basically, this is the latest mongodb, that can run on armhf (3.2 version unfortunately, 3.4 is using internal storage engine that was written from scratch only for 64-bit).
Allright, it looks like time has come for my first post.
Here are the mongodb armhf builds for Ubuntu 17.04 Zesty Zapus, which are no longer part of official repo.
Armhf support was thrown out because of everything moving heavily to 64-bits and it was a real challenge to compile these for 32-bit. But you probably already know that if you are reading this.
The original source, used to build the package is the mongodb source package of the distro, installed completely standard way “apt source mongodb”. No custom enthusiasts repos used. Plus a lot of effort to put back in mozjs 32-bit patches, taken from how it was before throwing armhf support out, and everything else that was trying to fall to pieces compiling for 32-bit armhf.
I have no guarantee over all that, there were two unittests failing which I had to comment out (seems they were related to really big numbers as parameters and not the logic itself), but I find that not very critical, keeping in mind there are tons of unittests that were not failing and completed successfully.
Still, there are chances the whole thing could go down for you for no reason.
Why did I do this? Because I’m running Ubiquity Unifi controller on my Odroid-XU4 (Exynos5) board, which I find very suitable for the task, regardless it is armhf.
And Unifi require mongodb as you already have guessed.
Everything works for me in this setup, if it would for you also – I’m glad it was helpful.