Requests for comment/Removing bad database abstractions
Removing bad database abstractions | |
---|---|
Component | Database |
Creation date | |
Author(s) | ^demon |
Document status | declined See Phabricator. |
Your comments here.
Background
editMediaWiki claims to support several backends. These include MySQL, Sqlite, Oracle, MSSQL and Postgres. Historically, we've only done well at 2 of them (MySQL and Sqlite).
Problem
editWe have thousands of lines of unmaintained code for database backends that are rarely used. They're all usually suffering from some level of bitrot...the biggest reason being that their schemas are not kept up to date with MySQL/Sqlite. This creates two problems
- It increases code maintenance burdens for developers (needless abstraction)
- It advertises features for end-users that we don't actually support
Proposal
editWe should remove database backends that lack an active maintainer and show little evidence of use. This allows us to focus on the databases we support properly and making the experience better for them.