Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-63556

Implement semi-async cache replication for EhCache in DC

XMLWordPrintable

    • We collect Jira feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      NOTE: This suggestion is for JIRA Server. Using JIRA Cloud? See the corresponding suggestion.

      Problem:
      Both, cache replication and cluster nodes discovery in EhCache are sequential and synchronous.
      Time required to replicate values is proportional to number of nodes in cluster.

      com.atlassian.cache.ehcache.replication.rmi.RMISynchronousCacheReplicator is a wrapper for net.sf.ehcache.distribution.RMISynchronousCacheReplicator

      We could use RMIAsynchronousCacheReplicator but it introduces numerous problems with backpressure and keeping soft references to objects waiting for replication.

      Solution:
      Implement semi-async replication where:

      • fire async replication tasks for each node
      • block until all tasks are done

      Implement parallel cluster nodes discovery

      It would significantly reduce cache replication time for large clusters

            Unassigned Unassigned
            dchan David Chan
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: