Skip to content

Refactor Gitlab::Database to support multiple DBs

Yorick Peterse requested to merge gitlab-database-multiple-databases into master

What does this MR do?

This refactors the module Gitlab::Database so it supports multiple databases. Logic tied to a connection is now scoped to instances of Gitlab::Dababase::Connection. For every database, an instance of this class is created and stored in Gitlab::Database::DATABASES.

The module Gitlab::Database still exposes various methods that forward the call to a corresponding instance of Database::Connection. These wrappers and their use will be changed in separate commits, as otherwise the diffs become far too large for anybody to make sense of.

See #331776 (closed) for more information.

Does this MR meet the acceptance criteria?

Conformity

Edited by Yorick Peterse

Merge request reports