What Version Control tools are available for MongoDB

3.9k Views Asked by At

I'm planning to integrate mongodb based migration tool in my spring boot application which is having spring-data dependency in project. I found main two libraries 1) Mongobee 2) Mongock.

I need some feedback which one should i choose ? Thanks in advance!

2

There are 2 best solutions below

3
Timo On

I've asked myself the same question and found this at https://github.com/jhipster/generator-jhipster/issues/8678 :

Mongobee appears to have been abandoned as there have been several open issues in the past 6 months without any feedback from the maintainers.

Mongock was derived from Mongobee, and among other things, provides support for MongoDB Atlas.

I have not used either. But I will try it with mongock.

0
M. Justin On

mongobee has incompatibilities starting with version 4.2 of MongoDB, and versions of the Mongo Java driver starting with version 4. Specifically, mongobee uses the system.indexes collection, which was removed in MongoDB 4.2 (mongobee#104). It also uses version 3 of the Mongo Java libraries, which is incompatible with changes made in version 4 of those libraries (mongobee#115). Additionally, by all appearances, mongobee has been abandoned since 2018.

MongoDB: Compatibility Changes in MongoDB 4.2

Removal of system.indexes and system.namespaces Collections

Starting in version 4.2, MongoDB removes the system.indexes and system.namespaces collections (deprecated since v3.0).

Mongo JVM Drivers: What’s New

What's new in 4.0

This release adds no new features but, as a major release, contains breaking changes that may affect your application. Please consult the Upgrading Guide for an enumeration of the breaking changes.

Mongock, on the other hand, is actively maintained and supports the newest MongoDB versions and Java libraries.

Mongock is therefore going to be the better choice of libraries in virtually all practical situations.