Skip to content

[ENSWEB-5706] Allow multiple "ancestral" databases in the Registry

Marek Szuba requested to merge bugfix/multi_ancestral_registry into release/100

Created by: muffato

Use case

See ENSWEB-5706 and related tickets for more information. The REST server sees all MySQL servers (Vertebrates and non-Vertebrates), which contain in total two ancestral databases, but the current Registry model only allows one. The Compara API then fails because it is not able to access the other one

Description

Ancestral databases are now registered with their division name, preventing a clash between the Plants and Vertebrates databases.

Note that for backwards compatibility and for consistency with the rest of the code, the name "Vertebrates" is currently omitted.

Do not merge until all these related pull-requests have been approved !: Ensembl/ensembl-compara#197, Ensembl/ensembl-production#430

Equivalent pull-requests: #491 for release/101 and #492 for master

Benefits

Now able to load all ancestral databases in the same Registry instance

Possible Drawbacks

Applications that load the NV server in the Registry won't be able to access the Plants ancestral database with "Ancestral sequences", but since this database has been introduced in e100, I think there is still time to change its Registry name and state that this is the nomenclature going forward.

Testing

Have you added/modified unit tests to test the changes?

No. The databases created by registry.t are prefixed by the user name and test_db. They wouldn't pass the regex used by load_registry_from_db

If so, do the tests pass/fail?

Have you run the entire test suite and no regression was detected?

Failures are in:

  • compara.t (because .travis.yml clones the master branch of Compara instead of the release/100 branch
  • housekeeping_apache2.t, because it is now 2020 and the files haven't had their copyright statement updated. I have only updated the one of Registry.pm

Merge request reports