Hacker News new | ask | show | jobs
by dmytton 5087 days ago
What version was this? 2.0 (which has been out almost a year) has journaling enabled by default which almost always provides complete single server durability for these situations.

Any database can suffer corruption if you shut down the server uncleanly - it depends on the state of the filesystem when it comes back up. That's why you have replication to protect against failure of a single node.

Having run Mongo in production for over 3 years, I've never lost any data despite numerous failure scenarios (including unclean shutdown).

1 comments

I believe it was 1.8. I know it wasn't a high-reliability configuration, and it could be that an unclean shutdown was to blame. I do not claim to know objectively how reliable MongoDB is.

I am, however very hesitant to rely on it for anything now, much as I would be hesitant to touch a machine that previously gave me a severe electric shock even though its creator and other users assure me it's safe now.

I can tell you now that it's extremely reliable - we store a lot of data in our mongodb - several million documents a day. As mentioned, it would be because journalling wasn't enabled which would mean possible corruption on non-clean shutdown. That's history.
That makes me willing to consider subjecting a test environment to abuse to see if it loses data so as to consider it for production use, but only if I had a compelling use case for it.