Cache Delegation: null keys are not permitted

Still need help?

The Atlassian Community is here for you.

Ask the community

Platform notice: Server and Data Center only. This article only applies to Atlassian products on the server and data center platforms.


After updating custom fields/screens in a project, the project settings become inaccesible, also issues in project (and possibly other projects) cannot be loaded.

The users might see an error message like Error rendering 'com.atlassian.jira.jira-view-issue-plugin:details-module'

The following appears in the atlassian-jira.log:

2018-06-01 15:28:49,010 http-nio-8080-exec-20 url:/rest/projectconfig/lates...8/48/fields ERROR AC32893 928x435093x2 jbf3oj, /rest/projectconfig/latest/issuetype/COE18/48/fields [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: java.lang.NullPointerException: null keys are not permitted
com.atlassian.cache.CacheException: java.lang.NullPointerException: null keys are not permitted
at com.atlassian.cache.ehcache.DelegatingCache.get(
at com.atlassian.jira.cache.DeferredReplicationCache.get(
at com.atlassian.jira.issue.fields.screen.DefaultFieldScreenSchemeManager.getFieldScreenScheme(
at com.atlassian.jira.issue.fields.screen.issuetype.IssueTypeScreenSchemeEntityImpl.getFieldScreenScheme(
at com.atlassian.jira.issue.fields.screen.issuetype.IssueTypeScreenSchemeImpl.getEffectiveFieldScreenScheme(
at com.atlassian.jira.projectconfig.issuetypes.fields.DefaultIssueTypeConfigFieldsHelper.getFieldScreen(
at com.atlassian.jira.projectconfig.issuetypes.fields.DefaultIssueTypeConfigFieldsHelper.lambda$getIssueTypesSharingScreen$0(
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(
at com.atlassian.jira.projectconfig.issuetypes.fields.DefaultIssueTypeConfigFieldsHelper.getIssueTypesSharingScreen(


Diagnostic Steps

  • referenced fieldscreenscheme in issuetypescreenschemeentity is null or is not in existing fieldscreenscheme
  • Steps like these will often involve checking data using SQL SELECT queries to see if the application is in a particular state OR any checks to ensure that the customers environment is in a state that will bring about the described problem


It is unknown how this data becomes invalidly referenced.


  • The following queries will identify rows in this state:

    select * from issuetypescreenschemeentity where fieldscreenscheme is null;
    select * from issuetypescreenschemeentity where fieldscreenscheme not in (select id from fieldscreenscheme);

    • Expectation is that no results are returned, as all entries should have a value in here. If something is returned, then it's a bad reference.

    • Before performing DELETE operations please see:

      Always back up your data before performing any modifications to the database. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.

    • The rows identified above should be deleted by primary key identifier.

Last modified on Oct 5, 2021

Was this helpful?

Provide feedback about this article
Powered by Confluence and Scroll Viewport.