The bigger issue I've seen was that some major ORMs were relying on some (apparently undefined?) behavior regarding the positional operator with nested collections of documents, and that behavior changed with a minor version. It's harder to blame MongoDB for that one, but the data corruption was cancerous – it multiplied on every document save.
Why you should never, ever, ever use MongoDB
11–20 of 33 posts
Re: Why you should never, ever, ever use MongoDB
#12Re: Why you should never, ever, ever use MongoDB
#13{"a": 1, "a": 2, "b": 3}
"a" maps to 2 different values in this case. Depending on how your languages driver works it's often difficult to see this is happening. In some languages you'll get "a" mapped to 1, and other languages will show "a" mapped to 2.
Re: Why you should never, ever, ever use MongoDB
#14It is still the case (and will remain for a long time -- also internet years) that to get reliable behavior, you need to use non-default options. Queries need a variety of extra flags that say, "please make this write durable", or "please be sure to give me the right answer". And, when you use the flags, they reliably make the DB slower. If you use enough of them to get ACIDy distributed reliability, it's hardly faster than other DBs.
So, in another two or three years, it will be an OK choice. In the meantime, PostgreSQL is arguably the better choice. And, of course, PG is not sitting still, so may still be a better choice in two or three years.
But most people using MongoDB don't care, because the overwhelming majority of uses of data storage just don't matter very much. When you see the list "people who bought this gewgaw also looked at this lot" on the bottom of a page, chances are that's Mongo telling you, and who cares if it's right? What matters is you didn't have to wait an extra ten seconds for the stupid page to load.
Still! Every time you order from Cisco, the order goes through a Mongo store. Since they have been using Mongo for a long time, they either make durability in their application code -- which, dangerous secret, is much easier than doing it in the DB -- or just aren't too arsed about it. (I'm betting it's the latter.)
Re: Why you should never, ever, ever use MongoDB
#15200% return since MDB went public. Should I sell or go longer?
Re: Why you should never, ever, ever use MongoDB
#16200% return since MDB went public. Should I sell or go longer?
Re: Why you should never, ever, ever use MongoDB
#17I was thinking that one approach might be first to just keep the schema-less data model and move over to using Postgres JSON. Once that is stable, then think about how we would move over to using schemas. Any thoughts on whether that is a plausible approach?
Re: Why you should never, ever, ever use MongoDB
#18Earlier quoted context omitted.
Are you saying things have changed, or just that it should be labeled 2015?
Personally I wonder if data loss was addressed with the WiredTiger engine.
Re: Why you should never, ever, ever use MongoDB
#19Has anyone had any success migrating from MongoDB over to Postgres? My team and I decided to try out MongoDB for a new app we wrote because the data model seemed to fit the idea of a schema-less document quite well. But many months later, Mongo has caused a few more headaches than its been worth and we are slowly leaning towards using a more traditional data model. I was thinking that one approach might be first to j…
Re: Why you should never, ever, ever use MongoDB
#20This article is very old (in internet years) and Mongo moves very fast. So most of the things in the article are way, way out of date. Very smart people working at Mongo understand where they need to get and how to get there, and they are well along the path. Bad old code is being replaced with better new code, limited mainly by backward compatibility bother. It is still the case (and will remain for a long time -- a…