andrewcmyers / civs

Condorcet Internet Voting System
http://civs1.civs.us
MIT License
91 stars 28 forks source link

feat: switch off BerkeleyDB #63

Open nyabinary opened 1 day ago

nyabinary commented 1 day ago

The license change and generally instability (anecdotally speaking) with BerkeleyDB makes it a strong candidate for replacement with a different DB backend.

andrewcmyers commented 1 day ago

I am open to suggestions for a replacement.

nyabinary commented 1 day ago

I am open to suggestions for a replacement.

SQLite?

andrewcmyers commented 1 day ago

I need a key-value store with strong consistency guarantees. SQLite seems like a bad fit on both dimensions.

nyabinary commented 19 hours ago

I need a key-value store with strong consistency guarantees. SQLite seems like a bad fit on both dimensions.

PostgreSQL? Etcd? TiKV? There is also RocksDB, but that requires a layer for consistency.

andrewcmyers commented 13 hours ago

I don't see a reason to believe that BDB is less reliable than any of these systems, since I've only seen one apparent problem in 20+ years. But if someone wants to explore alternatives I am happy to look at PRs. It would need to be an option rather than a replacement in any case, for backward compatibility.