David Johnson created USERGRID-1283:
---------------------------------------
Summary: Improve ServiceManager.init() start-up logic
Key: USERGRID-1283
URL: https://issues.apache.org/jira/browse/USERGRID-1283
Project: Usergrid
Issue Type: Improvement
Reporter: David Johnson
Sometimes on Usergrid startup there is a failure contacting Cassandra, either
an immediate communications failure or a time-out.
In some cases when this happens, the ServiceManager.init() method cannot
retrieve the internal Management Application that holds information about
Usergrid orgs, app and admin users.
We added some retry logic to the ServiceManager.init() method, which is not an
ideal fix because that method is also invoked in processing of HTTP requests.
Problem is, if the the retries do not work we end up with an instance of
Usergrid that is alive and able to respond to /status requests, but everything
else fails.
We should fix this by:
1) Moving the Management App lookup (and retry logic) to a much earlier point
in the startup process.
2) Caching the Management App in some place where all threads can get it. This
cache should never be allowed to be null. We always need to be able to fall
back to a recent version of the Management App
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)