Relying on what is now a proprietary database is most certainly not going to end well. There's nothing inherently wrong with the new Cockroach Labs licensing structure, but given our project's goals, it seems ill-advised to become locked into it.
We should evaluate alternatives and make sure (via appropriate tests) that we don't use Cockroach-specific features so we have a migration path to another Postgres-compatible HA solution.
Potential alternatives:
Staying on the BSL CockroachDB version, which will eventually become Apache2. Oxide has forked it.
Another flavor of consensus-based OLTP DB.
TiKB/TiDB.
MySQL-flavored.
No fully serializable transactions (requires manual locking via SELECT FOR UPDATE or a CAS).
YugabyteDB.
Neon.
...
Single-writer Postgres with synchronous replication and our own etcd-based leader election.
Relying on what is now a proprietary database is most certainly not going to end well. There's nothing inherently wrong with the new Cockroach Labs licensing structure, but given our project's goals, it seems ill-advised to become locked into it.
We should evaluate alternatives and make sure (via appropriate tests) that we don't use Cockroach-specific features so we have a migration path to another Postgres-compatible HA solution.
Potential alternatives:
SELECT FOR UPDATE
or a CAS).