Problem/Motivation
At the moment there are a lot of problems when you are the developer/maintainer of a contrib database driver. Normally when you are working on a contrib module and you have a problem, you look at how something similar is solved by the by core supported modules and use that solution for you contrib module. The problem for contrib database driver developers/maintainers is that solution does not work for them. In Drupal core there are a lot of specific for a database driver exceptions. Contrib database drivers are not allowed (for good reasons) to have the same exception added in core. That makes solving some problems almost impossible for contrib database drivers.
Proposed resolution
Move the by core supported database drivers to their own module (this issue). In following issues the specific exceptions in core for the by core supported database driver will be moved to the module part of the database drivers. When doing so we need to solve how to have those exception in a module instead of in regular core code. When do this for the by core supported database driver, the contrib database drivers can use the same solution.
Remaining tasks
TBD
User interface changes
None
API changes
The Database API and the Schema API are part of the public API. The implementation of those API's by the by core supported database drivers (MySQL, PostgreSQL and SQLite) are however NOT part of the public API. Therefor this patch does not contain any API changes.
Data model changes
None
Release notes snippet
TBD