Some extensions want to install some of their tables to a different database or cluster, to share them between multiple wikis (e.g. CentralAuth with $wgCentralAuthDatabase or Flow with $wgFlowCluster / $wgFlowDefaultWikiDb). There isn't currently any way to indicate this in the schema or the installer, so we end up with creative solutions which differ from extension to extension; automated schema updates for these extensions usually don't work at all, or only work if the wiki is configured to store all tables in the main database.
Also, these tables must remain functional during PHPUnit integration tests (even if they aren't tested directly, they might be invoked from hooks that the tests for core or other extensions trigger). The common solution is to use the UnitTestsAfterDatabaseSetup / UnitTestsBeforeDatabaseTeardown hooks to manually create / delete the tables. The process is extremely hacky (for example they don't use the testdb prefix because UnitTestsBeforeDatabaseTeardown would not have access to it, so these tables are created / deleted at their production location) and a source of fragility (see T310255, T314515, T251967 for some examples of things going wrong).
It would be nice to have a proper mechanism to declare the DB and cluster (and be able to configure the installer to ignore it, e.g. for CI). Conversely, there should be a way for a LoadExtensionSchemaUpdates hook handler to tell DatabaseUpdater which cluster / DB to update the schema in.