Problem:
When multiple engines are configured and one is not available, the fetching of users not present in the cache may fail, even if at least one of the other engines is available. This is because Optimize tries to resolve the user directly via the engine rest-api if it's not in the ache and any potential exception from a single engine may fail the whole operation. This behavior depends on the order of the configured engines.
Steps to reproduce:
1. configure two engines
3. take down the first engine in the list (or configure the wrong engine-rest path)
4. start Optimize
5. login to Optimize
Actual result :
A 500 error is reported on `/user` or `/entities` and no entities are displayed
Expected result:
The entity list can be resolved regardless of engine connectivity
Hint:
Check other occasions where configured engines are iterated to fetch data, we should gracefully skip unavailable engines in such cases.