Project Permissions page throws NullPointerException in Jira server
症状
When administrators tries to access the permissions tab on the Project Administration page, a java.lang.NullPointerException is thrown.
The following appears in the atlassian-jira.log
:
2016-01-13 22:58:10,993 http-nio-8080-exec-23 WARN test 1378x104376x1 40dvcs 10.0.2.56 /plugins/servlet/project-config/TES/permissions [c.atlassian.ozymandias.SafePluginPointAccess] Unable to run plugin code because of 'java.lang.NullPointerException - null'.
Or you may see the following error from the UI:
java.lang.NullPointerException
java.lang.NullPointerException
at java.util.Comparator.lambda$comparing$77a9974f$1(Comparator.java:469) [?:1.8.0_102]
at java.util.TimSort.binarySort(TimSort.java:296) [?:1.8.0_102]
at java.util.TimSort.sort(TimSort.java:221) [?:1.8.0_102]
at java.util.Arrays.sort(Arrays.java:1512) [?:1.8.0_102]
at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:348) [?:1.8.0_102]
at java.util.stream.Sink$ChainedReference.end(Sink.java:258) [?:1.8.0_102]
...
原因
This error is caused by invalid entries for project permissions.
ソリューション
Backup
The following changes are irreversible. Please ensure that the JIRA database backup is taken before proceeding to the resolution steps. It is also recommended that JIRA is taken out of service before starting the database backup.
Run the following query to confirm there are invalid entries:
select * from nodeassociation where association_type = 'ProjectScheme' and not exists (select 'x' from project where project.id = source_node_id);
Jira を停止します。
Run the following query to delete the invalid entries:
delete from nodeassociation where association_type = 'ProjectScheme' and not exists (select 'x' from project where project.id = source_node_id);
- Jira を再起動します。