Between single-datasource mode and regular one, and datasources coming from Tomcat or from Nuxeo, XA or not, we have too many ways to configure datasources. Since NXP-13688 we have only one canonical way of defining proper datasources.
This is confusing and dangerous because:
- the user gets confused,
- the code gets complex,
- the test coverage doesn't use all methods,
- when single-datasource mode is activated, in some cases autocommit is used instead of proper transactions.
We should remove all non-Nuxeo methods and simplify related code.
As a result of these changes, the following are now obsolete and unused:
- System property nuxeo.db.singleDataSource (always false now)
- System property nuxeo.db.embeddedDatasources (always true now)
- Elements xa-datasource and property of the <repository> element of the repository extension point of org.nuxeo.ecm.core.storage.sql.RepositoryService (datasource repository_+repositoryName is always used now)