[ https://issues.apache.org/jira/browse/JAMES-3959?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benoit Tellier closed JAMES-3959. --------------------------------- Resolution: Fixed > Starting distributed James without OpenSearch > --------------------------------------------- > > Key: JAMES-3959 > URL: https://issues.apache.org/jira/browse/JAMES-3959 > Project: James Server > Issue Type: Improvement > Components: elasticsearch > Affects Versions: 3.9.0 > Reporter: Benoit Tellier > Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > h3. Why? > While doing some resiliency tests (PRA: Activity Recovery Plan) we noticed > that it is compulsory to have the OpenSearch cluster online in order to start > James. > However, in case of disaster, I should be able to start James without having > an OpenSearch cluster online. Indeed, search is a (very) nice to have feature > but not an absolute necessity for sending / receiving mails. And restauring > an OpenSearch service could take significant time. Being able to start > without the OpenSearch cluster would thus allow to significantly accelerate > the recovery plan. > Today one could start even the distributed server in scanning mode, so > without OpenSearch but this is not a good idea for two reasons: > - The search would thus be implemented by scanning entire mailbox thus a few > user doing search could have significant impacts thus worsening the incident. > - The documents to index would be lost and some sorts of full reindexing > would also be needed when coming back online. > h3. Expectations > I expect the following: > - being able to start without OpenSearch > - Search operations hitting the search index fails. But SearchOverrides > would succeed, offering a minimal search service for non search operations eg > imap resynchronisation... > - No index attempt is performed but events would be stored in the right > place in event dead letter to eventually get replayed... > h3. How? > Provide a `opensearch_disabled` search index implementation: > - reject search not satisfied by search overrides > - save events into event dead letter for later processing > h3. Definition of done > Integration tests matching the expectations. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org