fgalan
fgalan

Reputation: 12322

MongoDB C++ legacy-1.1.x compatibility with MongoDB 3.4

I'm a developer in a C++ project that uses MongoDB. In particular, we are using MongoDB 3.2 with driver legacy-1.1.x. We have a test regression suite of around ~2000 tests (between unit test and black-box tests) most of them triggering interactions with the MongoDB server.

We have tested to change the MongoDB server, from 3.2. to 3.4. We have run the test suite with 3.4 and all tests have worked without any problem.

That seems to be good news. However, looking to MongoDB C++ driver documentation I see legacy-1.1.x driver is not compatible with MongoDB 3.4.

So I wonder, why my code (all the ~2000 regression tests) is working? Maybe the compatibility matrix in the documentation is the recommended setup but it is not mandatory? Or maybe the incompability raises when using some new feature in MongoDB 3.4 that my code is not using (given it was designed with the functionality set of MongoDB 3.2 in mind)?

Upvotes: 1

Views: 238

Answers (1)

acm
acm

Reputation: 12727

That matrix should be read as "recommended". As you suggest, there are MongoDB 3.4 features that cannot be accessed via the legacy driver, and there are no plans to add support. However, I would not find it surprising that if your tests do not require any 3.4 features, that the driver would continue to work as designed.

However, I cannot recommend strongly enough that you upgrade to the new mongocxx driver as soon as possible. The legacy driver is in critical bugfix only maintenance and will head to EOL sooner rather than later.

The new driver offers a much better programming model, conforms with modern MongoDB driver designs and principles, and will be updated to express support for new database features on an ongoing basis.

Upvotes: 3

Related Questions