Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[ADR] JMAP: Mention InfiniSpan as a possible alternative
  • Loading branch information
chibenwa committed Nov 16, 2020
commit 3907a83c52c769d9b6f0e094276c3273d20dd4d5
6 changes: 6 additions & 0 deletions src/adr/0043-avoid-elasticsearch-on-critical-reads.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,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 then
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. This would require one more software dependency.

## Example of optimized JMAP requests

### A: Email list sorted by sentAt, with limit
Expand Down