We had to provide our own active / active storage backend, and fabric. If there were any hiccups, the entire system fell over. The horizontal scalability was nice, but if you caused I/O saturation on the backend, you'd end up knocking over the entire cluster due to shared components. Several times, the entire DB just "broke" (this was a couple scenarios, one where the DB was using 100% of CPU, one where the DB was frozen, and not allowing connections, and things like hung queries that couldn't be stopped), and it required restarting the whole cluster, for which there was minimal tooling.
Perhaps SQL server is better, but that comes with an entirely new ecosystem, and other problems.
My biggest thing is being able to crack open the DB, and look at the source code when it breaks. In this, the likes of Datastax Cassandra and Cockroachdb are great, but I wouldn't call them "proprietary" by any means.
Also, Cassandra is active-active as well.
I'm sure there are others, but I'm less familiar with them (Yugabyte, Couchbase, etc..)
So it's not consistent in the CAP Theorem sense. Comparing it with other databases that don't lose writes and don't have split brain issues makes no sense
Of course, the issue with all shared-storage systems is how much it costs to have a reliable and fast shared storage.
This seems highly dependent on how you define “critical”. I think most people’s definition allows for everything to be in the cloud.
Specifics are here: https://www.yugabyte.com/postgresql/postgresql-high-availabi...
The free alternative would be Mysql/Mariadb + Galera Cluster. Not as solid as proprietary ones, but far easier to use and less buggy than Postgres + tons of tools.
Until someone accidentally run an expensive DDL on your Galera Cluster: now your cluster is down for hours without anyway to cancel that query except nuking the entire database and restore from backup.