My problems were to do with data-loss and unrecoverable corruption. I didn't write a blog-rant, but maybe I should have.
I have since learned that I could have changed some configuration options to make MongoDB less likely to corrupt and/or lose data. I'm still wary though - the fact that the default configuration was prone to unrecoverable data loss suggests that any time I use MongoDB, I must carefully research the feature I'm using to make sure I don't do it in a way that causes data loss.
I believe dangerous configurations should never be the default, and dangerous features should be clearly labeled. The default method for writing data should not fail silently, for example. The fast, fire-and-forget write should be called something like "unchecked_write".
They did it more when it first came around. Redis wasn't in the same category. It was usually compared to CouchDB, another one I don't remember, and then traditional SQL DBs. Couch for example looked much worse in benchmarks because it tried a bit harder to take care of users' data and didn't just fling it over the fence. But it mostly lost out because OMG benchmarks!
> I didn't write a blog-rant, but maybe I should have.
Yes do. Everytime I tell people how Mongo can lose their data and silently corrupt it. They say "ha, but you never experienced it, how do you know". Well, apart from explaining the way write work in theory I have the "There is this one guy on the internet,... let me find his blog". But I suspect there is more than one guy.