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

JIRA Datacenter - Add additional Lucene index checks before propagating index to other nodes

XMLWordPrintable

    • 2
    • 6
    • 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.

      Problem Definition

      JIRA Datacenter can share lucene index between nodes on request. In some cases this lucene index can be corrupted at specific node, in that case that node still can reply and propagate that index to other nodes (nodes copy it from shared folder), thus affecting whole cluster.

      Suggested Solution

      Potential "donor" node should detect that index is corrupted (and possibly not healthy) and should not reply to request.

      Note

      There is similar check already in backupIndex(), see JRASERVER-64927

      public String backupIndex(String requestingNode, final IndexSnapshotContribution contribution) {
      ...
      final Long latestOperation = ofBizNodeIndexOperationStore.getLatestOperation(nodeId);
       if (latestOperation == null) {
          LOG.warn("Index backup failed - latest index operation not found. Requesting node: {}", requestingNode);
         return null;
       }
      

      so node refuses to share index if it does't have index operations.

      Workaround

      None

              Unassigned Unassigned
              ayakovlev@atlassian.com Andriy Yakovlev [Atlassian]
              Votes:
              23 Vote for this issue
              Watchers:
              27 Start watching this issue

                Created:
                Updated: