As a Jira user I would like to fix corrupted ARJ Plan indexes when they get corrupted

XMLWordPrintable

    • 4
    • 15

      Indexes for ARJ Plans can get corrupted and one of the symptoms is not showing Issue(s) even though they comply with the following:

      • They are in the scope
      • They are not on a final status
      • They are/were not removed from Plan
      • They are not in exclusion rules
      • They are not in an excluded version

      They are not shown even if switching views

      Diagnosis

      1. Configure a create one scenario
      2. Confirm that the Issues are shown now
        • To this point we can see there's a problem with the now, initial scenario. Having an NOK & OK scenario.
      3. Navigate the scenarios, and get the following information from the URL: i.e.: https://domain-name.com/jira/secure/PortfolioPlanView.jspa?id=1&sid=1&vid=3#plan/backlog
        id = 1   -> Plan ID
        sid = 1 -> scenario ID
        
      4. Run the following cURL command for each scenario with the following parameters and save the output:
        • update <---> with the values you got for id and sid
        • update <PKEY>-<ISSUE-NUM> with one of the missing/affected Issues
        • update <Jira-Base-URL> with your actual Jira Base URL.
          curl -u user:password -X POST --data '{"planId":<--->,"scenarioId":<--->,"issueKey":"<PKEY>-<ISSUE-NUM>"}' -H "Content-Type: application/json" <Jira-Base-URL>/rest/jpo/1.0/backlog/analyse > Scenario_name.json
          
          • In case you cannot use plain text passwords. Generate a PAT (Personal Access Token) and use it instead:
            -H "Authorization: Bearer <pat_token>"
            
      5. Make a diff between the JSON files. Look at the indexes CORE, CORE_ENRICHMENT, SCENARIO & CALCULATION. They should be the same. If they don't match, most likely there's an Index corruption. i.e.:
        • "index": "CORE",
                  "issueKey": "SCRUM-1",
                  "match": true,
                  "subQueries": {
                      "[BASE] (+(projid:10000) +(#project_permissions:(p#10000) #issue_level_permissions:(s#-1)) -(ISSUEPROP_jpo-exclude-from-plan$plans:1)) jpo_index_marker:scenario jpo_index_marker:calc_assignment jpo_index_marker:enrichment": true,
                      "[FLTR] +(*:* -status:5 -status:6 -status:10001) +(*:*) +(*:*)": true,
                      "[FULL] +((+(projid:10000) +(#project_permissions:(p#10000) #issue_level_permissions:(s#-1)) -(ISSUEPROP_jpo-exclude-from-plan$plans:1)) jpo_index_marker:scenario jpo_index_marker:calc_assignment jpo_index_marker:enrichment) +(fixfor:-1 fixfor:10000 fixfor:10001 fixfor:10002) +(+(*:* -status:5 -status:6 -status:10001) +(*:*) +(*:*))": true,
                      "[PART] #project_permissions:(p#10000) #issue_level_permissions:(s#-1)": true,
                      "[PART] *:*": true,
                      "[PART] *:* -status:5 -status:6 -status:10001": true,
                      "[PART] +jpo_index_marker:scenario +(projid:10000)": false,
                      "[PART] fixfor:-1 fixfor:10000 fixfor:10001 fixfor:10002": true,
                      "[PART] projid:10000": true,
                      "[PERM] #project_permissions:(p#10000) #issue_level_permissions:(s#-1)": true
          
          "index": "CORE",
                  "issueKey": "SCRUM-1",
                  "match": true,
                  "subQueries": {
                      "[BASE] (+(projid:10000) +(#project_permissions:(p#10000) #issue_level_permissions:(s#-1)) -(ISSUEPROP_jpo-exclude-from-plan$plans:1)) jpo_index_marker:scenario jpo_index_marker:calc_assignment jpo_index_marker:enrichment": true,
                      "[FLTR] +(*:* -status:5 -status:6 -status:10001) +(*:*) +(*:*)": true,
                      "[FULL] +((+(projid:10000) +(#project_permissions:(p#10000) #issue_level_permissions:(s#-1)) -(ISSUEPROP_jpo-exclude-from-plan$plans:1)) jpo_index_marker:scenario jpo_index_marker:calc_assignment jpo_index_marker:enrichment) +(fixfor:-1 fixfor:10000 fixfor:10001 fixfor:10002) +(+(*:* -status:5 -status:6 -status:10001) +(*:*) +(*:*))": true,
                      "[PART] #project_permissions:(p#10000) #issue_level_permissions:(s#-1)": true,
                      "[PART] *:*": true,
                      "[PART] *:* -status:5 -status:6 -status:10001": true,
                      "[PART] +jpo_index_marker:scenario +(projid:10000)": false,
                      "[PART] fixfor:-1 fixfor:10000 fixfor:10001 fixfor:10002": true,
                      "[PART] projid:10000": true,
                      "[PERM] #project_permissions:(p#10000) #issue_level_permissions:(s#-1)": true
                  }
          
          • Both CORE Indexes come from the same Plan, but different scenario, however, the Index should be the same.

      Expectation

      Have a functionality to re-index/fix the Plan Indexes.

      Actual results

      Currently there's no way to re-index/fix Plans' Indexes.

      Workaround

      Disable the scenarios and chose the OK Scenario as the one to apply to the plan.
      i.e:

      1. Plans>Plan> Configure (.)> Scenarios > Disable
      2. In the pop-up select the OK Scenario to keep and save data from it:

      This action will copy the OK Scenario over the corrupted one.

            Assignee:
            Unassigned
            Reporter:
            Jose Antonio Uribe (Inactive)
            Votes:
            8 Vote for this issue
            Watchers:
            13 Start watching this issue

              Created:
              Updated: