This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 3b189dffbe2d496046b17dcaba0957d81a1c171e Author: Benoit Tellier <[email protected]> AuthorDate: Mon Nov 16 18:56:29 2020 +0700 [ADR] JMAP: Mention InfiniSpan as a possible alternative https://github.com/apache/james-project/pull/259#discussion_r522874294 --- src/adr/0043-avoid-elasticsearch-on-critical-reads.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/adr/0043-avoid-elasticsearch-on-critical-reads.md b/src/adr/0043-avoid-elasticsearch-on-critical-reads.md index e3954ca6..c2e1b7d 100644 --- a/src/adr/0043-avoid-elasticsearch-on-critical-reads.md +++ b/src/adr/0043-avoid-elasticsearch-on-critical-reads.md @@ -59,6 +59,12 @@ Cassandra dataset size will only grow of a few percents if enabled. Those not willing to adopt this view will not be affected. By disabling the listener and the view usage, they will keep resolving all `Email/query` against ElasticSearch. +Another solution is to implement the projecting using a in-memory datagrid such as infinispan. The projection +would be computed using a MailboxListener and the data would be first fetched from this cache and fallback to +ElasticSearch. We did not choose it as Cassandra is already there, well mastered, as disk storage is cheaper than +memory. InfiniSpan would moreover need additional datastore to allow a persistent state. Infinispan on the other hand +would be faster and would have less restrictions on data filtering and sorting. Also this would require one more software dependency. + ## Example of optimized JMAP requests ### A: Email list sorted by sentAt, with limit --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
