Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This is related to https://confluence.atlassian.com/jirakb/boards-are-not-visible-after-the-filter-is-deleted-779158656.html 

Resolution 1:

  1. Create a new filter. For its query you can use something like 'project = XXXX', where XXXX is any project of your choosing.
  2. In the JIRA's database in the AO_60DB71_RAPIDVIEW table update the SAVED_FILTER_ID of the problematic boards to use the newly created filter's ID. To find the problematic boards you can use their ID's from the URL in the links represented by the boards' names in the integrity check result.
  3. Refresh JIRA’s internal caches for this change to be picked up – you can do that by going to CMJ’s Advanced page and clicking the Clear caches button.

Resolution 2:

It is also possible to remove the affected boards with the following Groovy script. Running the script will list all boards with missing filters. Changing the fix variable to true and running the script will delete the affected boards.

Code Block
languagegroovy
def fix = false

import com.atlassian.greenhopper.model.rapid.RapidView
import com.atlassian.greenhopper.manager.rapidview.RapidViewManager
import com.onresolve.scriptrunner.runner.customisers.JiraAgileBean
import com.atlassian.jira.issue.search.SearchRequestManager
import com.atlassian.jira.component.ComponentAccessor

public class NoCheck implements RapidViewManager.RapidViewPermissionCheck
{
	public boolean check(RapidView view)
	{
		return true;
	}
}

@JiraAgileBean RapidViewManager rapidViewManager
SearchRequestManager srm = ComponentAccessor.getComponent(SearchRequestManager)

def removed = []
rapidViewManager.getAll(new NoCheck()).value.each {b->
	if(srm.getSearchRequestById(b.savedFilterId)==null) {
		if(fix) {
			def res = rapidViewManager.delete(b)
		}
		removed.add("${b.id},${b.name},${b.owner}")
	}
}
def result  = removed.join("\n")
return result