5

I was reading the MongoDB install instructions and noticed they have a private repository that the instructions tell you to add. I'm wondering if this is really needed because MongoDB is also in the Ubuntu repository (Ubuntu 12.04). I was thinking maybe its easier for them to publish to their own repo compared to Ubuntu's? But I'm really not sure. Was just wondering if someone could shed some light on this.

2 Answers 2

9

The main difference that you'll see between the Ubuntu repository and the MongoDB project's own repository is their definition of "stable".

The Ubuntu repository will keep the same major version of MongoDB in their repository that was initially tested with the version of Ubuntu that you're running. Any security updates or major bugfixes released in a new version of MongoDB will be backported into the older version in the Ubuntu repository, instead of introducing a whole new major version with potential incompatibilities, config file changes, features, and bugs.

The MongoDB project, on the other hand, will be publishing the new versions into their repository as soon as they consider them stable.

Essentially, the main difference will be that you'll get new releases earlier if you use the MongoDB project's repository - which may be a good thing if you need to be on the current version, and may bite you if a bug or incompatibility comes up from an upgrade to a new version.

1

Shane's answer above explains the why in terms of the difference between the two repositories and how the major version freeze policy impacts the versions released. It basically boils down to release frequency. Relatively young and active products are going to be quite stale if only refreshed based on a 2 year cycle (as LTS currently is).

If you are going to update to the 12.10 release and 13.04 etc. then you will probably be fine in terms of keeping relatively up to date.

In terms of a general recommendation with respect to MongoDB if you intend to remain on LTS until 14.04 or beyond:

Currently the version shipped with 12.04 is 2.0.4, which at the time of writing this answer is the latest release, with 2.0.5 due soon. For now, that means that the two are roughly equivalent. However 12.04 is the LTS release - that means 2 years until a new LTS release and 5 years before it is no longer supported.

The 2.0 branch will probably see one or two more point releases, and then be done in terms of back ports. 2.2 is due out in the next couple of months. 2 years from now, MongoDB could be on 3.0 or more, you would be 4 major releases behind. 5 years from now it would be even more of a difference, the two versions will probably not resemble each other even remotely. Look at the version shipped with 11.04 (1.6) versus now for example, 1.6 is not recommended for use at all - and that is after just 1 year.

Therefore, if you want to stay up to date with features on an active product, then the 10gen repo is going to be a far better long term bet than the frozen 2.0.x release in the Ubuntu repo.

Once MongoDB has been pushed out to one release every 18-24 months, the Ubuntu repos will be a safe bet, when the period is significantly shorter, you are generally better off exploring other options.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .