MongoDB 4.0 will support transactions!

Info here - https://www.mongodb.com/transactions

Hopefully this can be integrated into future Meteor releases :slight_smile:

17 Likes

Great news! Definitely changes the Meteor value proposition!

MongoDB 4.0

2 Likes

This is a very big deal! Are there any database experts here who can weigh in on whether PostGres still has advantages over Mongo?

surprisingly hilarious post title by the Mongo team haha

5 Likes

Well, enforced foreign keys would be one if you care about normalization and don’t want to plunk everything into one document (and as a result, cascading DELETEs and stuff)
Stored procedures.
Triggers.
Inner/Outer/Right JOINs
Schema validation by the db itself

2 Likes

Great to know that one of the biggest pain points for people to adopt MongoDB as the primary data storage is resolved!

1 Like

This is a joke, right?

Strongly Typed Schema (see @rhywden’s answer),
Foreign Data Wrappers,
Awesome geospatial capabilities through PostGIS (beats Oracle and MS SQL).

Until your business gets to the size where you need a Big Table kind of solution, Postgres will serve you very well, with everything you need.

Hilarious alright although non native speakers might be forgiven for thinking they had ACID all along and are dropping (support for) it. :joy:

This is fantastic news!

3 Likes

Awesome. However it does mean that Meteor is more and more diverging from the Mongo feature set. I find myself using rawCollection more and more. And with the focus on apollo I don’t see any planned efforts to keep Meteor up to par with Mongo capabilities. For now it’s manageable, but when they inevitably drop in a foreign key / data joining system, it might require substantial work to Meteor’s mongo/minimongo system.

1 Like

That’s been there for a while: it’s the $lookup operator in the aggregation pipeline (technically, it just acts as a left join, so the minimum useful feature).

I tend to agree. I use rawCollection() with async/await a lot. Mainly in methods, as the loss of isomorphism in client code can be most effectively ignored there.

We need this in Meteor ASAP.

1 Like

This is awesome news. I really hope we have a future Meteor release to embrace all the new changes in MongoDB - transactions, change streams, etc.

6 Likes

Right, with transactions, change streams and full support of the aggregation pipelines, I personally don’t need any Apollo or whatsoever anymore…

1 Like

Maybe it’s time for Meteor to officially support transactions?