Anarchy in the Database: A Survey and Evaluation of Database Management System Extensibility
Posted by mttd@reddit | programming | View on Reddit | 2 comments
mttd@reddit (OP)
Abstract:
Database Extensions Analyzer: https://github.com/cmu-db/ext-analyzer
Talk: https://www.youtube.com/watch?v=U7v0fubktoY
godndiogoat@reddit
Extension conflicts blow up in prod because nobody pins ABI versions or runs them together in CI.
Hook the ext-analyzer into your pipeline: spin up a fresh container, enable the extension set you care about, then run a quick regression suite. You’ll catch the catalog clashes before they get anywhere near staging. If you ship multiple DBs, publish a simple matrix-version X of extension A works up to Y, after that you need its fork. Treat it like libs on Linux: clear dependency graph, semantic versioning, tiny changelogs. For dynamic languages, ship a small smoke test script that runs CREATE EXTENSION …; SELECT 1; during package install. I’ve run Supabase and Hasura for rapid GraphQL, but DreamFactory covers the times I need one REST gateway across Postgres plus a couple weird DuckDB plugins without babysitting auth. Pin versions and test in CI or those conflicts will keep biting.