When trying to create a Service Desk Project from withing JIRA, we get the following error:
Hmm... We couldn't create your project due to an unknown error. Try refreshing the page to start again.
The versions we are running are:
- JIRA Service Desk 3.11.1
- JIRA Software 7.8.1
- Uptaded from 7.3.0
- Updated from 7.2.4
- Updated from 7.2.0
- Updated from 6.4.14
When I checked the logs, I found the following:
--------------------------------------------------------------------------------------------
2018-05-28 12:56:13,522 http-nio-8081-exec-1 ERROR username 776x5686862x1 1p2vsr0 10.x.xx.xxx,127.0.0.1 /rest/project-templates/1.0/templates [c.a.jira.project.ProjectCreateRegistrarImpl] The handler with id com.atlassian.jira.project-templates-plugin:apply-project-template-handler threw an exception while handling a notification about a project being created
com.atlassian.cache.CacheException: java.lang.IllegalArgumentException: cacheLoader returned null for key 'SD_REQTYPE'
at com.atlassian.cache.memory.DelegatingCachedReference.get(DelegatingCachedReference.java:91)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.ValidRequestTypeProvider.getCache(ValidRequestTypeProvider.java:129)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.ValidRequestTypeProvider.getAllRequestTypes(ValidRequestTypeProvider.java:89)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.RequestTypeInternalManagerImpl.getAllRequestTypes(RequestTypeInternalManagerImpl.java:340)
at com.atlassian.servicedesk.internal.feature.customer.portal.PortalDeletionManagerImpl.lambda$deletePortal$1(PortalDeletionManagerImpl.java:40)
at io.atlassian.fugue.Either$RightProjection.map(Either.java:872)
at io.atlassian.fugue.Either.map(Either.java:217)
at com.atlassian.servicedesk.internal.feature.customer.portal.PortalDeletionManagerImpl.deletePortal(PortalDeletionManagerImpl.java:36)
at com.atlassian.servicedesk.internal.project.ServiceDeskDeletionManagerImpl.lambda$deleteServiceDeskByProject$4(ServiceDeskDeletionManagerImpl.java:105)
at io.atlassian.fugue.Either$AbstractProjection.forEach(Either.java:714)
at io.atlassian.fugue.Either.forEach(Either.java:280)
at com.atlassian.servicedesk.internal.project.ServiceDeskDeletionManagerImpl.deleteServiceDeskByProject(ServiceDeskDeletionManagerImpl.java:105)
at com.atlassian.servicedesk.internal.feature.servicedesk.InternalServiceDeskServiceImpl.deleteServiceDesk(InternalServiceDeskServiceImpl.java:210)
at com.atlassian.servicedesk.internal.feature.gettingstarted.GettingStartedService.createServiceDeskForEmptyProject(GettingStartedService.scala:143)
at com.atlassian.servicedesk.internal.project.ServiceDeskProjectConfigurator.callGettingStartedServiceToCreateServiceDesk(ServiceDeskProjectConfigurator.java:70)
at com.atlassian.servicedesk.internal.project.ServiceDeskProjectConfigurator.lambda$configure$0(ServiceDeskProjectConfigurator.java:55)
at io.atlassian.fugue.Either$RightProjection.flatMap(Either.java:886)
at io.atlassian.fugue.Either.flatMap(Either.java:231)
at com.atlassian.pocketknife.step.EitherStep1.then(EitherStep1.java:18)
at com.atlassian.servicedesk.internal.project.ServiceDeskProjectConfigurator.configure(ServiceDeskProjectConfigurator.java:54)
at com.atlassian.servicedesk.internal.project.template.hook.ItilV2ServiceDeskAddProjectHook.configure(ItilV2ServiceDeskAddProjectHook.java:17)
at com.atlassian.jira.projecttemplates.service.ApplyProjectTemplateHandler.applyProjectTemplate(ApplyProjectTemplateHandler.java:65)
at com.atlassian.jira.projecttemplates.service.ApplyProjectTemplateHandler.onProjectCreated(ApplyProjectTemplateHandler.java:53)
at com.atlassian.jira.project.ProjectCreateRegistrarImpl.notifyAllHandlers(ProjectCreateRegistrarImpl.java:35)
at com.atlassian.jira.bc.project.DefaultProjectService.notifyHandlersOfProjectCreated(DefaultProjectService.java:394)
at com.atlassian.jira.bc.project.DefaultProjectService.createProjectInternal(DefaultProjectService.java:379)
at com.atlassian.jira.bc.project.DefaultProjectService.createProject(DefaultProjectService.java:349)
... 2 filtered
at java.lang.reflect.Method.invoke(Method.java:498)
at com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:26)
at com.sun.proxy.$Proxy516.createProject(Unknown Source)
... 2 filtered
at java.lang.reflect.Method.invoke(Method.java:498)
at com.atlassian.plugin.osgi.bridge.external.HostComponentFactoryBean$DynamicServiceInvocationHandler.invoke(HostComponentFactoryBean.java:136)
at com.sun.proxy.$Proxy516.createProject(Unknown Source)
at com.atlassian.jira.projecttemplates.service.ProjectTemplateServiceImpl.applyProjectTemplate(ProjectTemplateServiceImpl.java:173)
at com.atlassian.jira.projecttemplates.rest.ProjectTemplatesResource.createProjectFromFormRequest(ProjectTemplatesResource.java:170)
... 3 filtered
at java.lang.reflect.Method.invoke(Method.java:498)
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
... 12 filtered
at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:154)
... 1 filtered
at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:68)
... 32 filtered
at com.atlassian.servicedesk.internal.web.ExternalCustomerLockoutFilter.doFilter(ExternalCustomerLockoutFilter.java:56)
... 13 filtered
at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
... 53 filtered
at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:66)
... 1 filtered
at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:64)
... 16 filtered
at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37)
... 19 filtered
at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30)
... 5 filtered
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.lambda$invokeFilterChain$0(CustomerContextSettingFilter.java:181)
at com.atlassian.servicedesk.internal.api.util.context.ReentrantThreadLocalBasedCodeContext.rteInvoke(ReentrantThreadLocalBasedCodeContext.java:137)
at com.atlassian.servicedesk.internal.api.util.context.ReentrantThreadLocalBasedCodeContext.runOutOfContext(ReentrantThreadLocalBasedCodeContext.java:90)
at com.atlassian.servicedesk.internal.utils.context.CustomerContextServiceImpl.runOutOfCustomerContext(CustomerContextServiceImpl.java:47)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.outOfCustomerContext(CustomerContextSettingFilter.java:174)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilterImpl(CustomerContextSettingFilter.java:130)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilter(CustomerContextSettingFilter.java:121)
... 4 filtered
at com.atlassian.jwt.internal.servlet.JwtAuthFilter.doFilter(JwtAuthFilter.java:32)
... 8 filtered
at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
... 4 filtered
at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36)
... 26 filtered
at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25)
... 23 filtered
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: cacheLoader returned null for key 'SD_REQTYPE'
at com.atlassian.jira.cache.request.RequestCacheImpl.getNotNull(RequestCacheImpl.java:116)
at com.atlassian.jira.cache.request.RequestCacheImpl.get(RequestCacheImpl.java:42)
at com.atlassian.jira.avatar.AvatarManagerImpl.getDefaultAvatarId(AvatarManagerImpl.java:505)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.RequestTypeQStoreImpl$RequestTypeMapper.lambda$apply$1(RequestTypeQStoreImpl.java:625)
at io.atlassian.fugue.Option$None.fold(Option.java:393)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.RequestTypeQStoreImpl$RequestTypeMapper.apply(RequestTypeQStoreImpl.java:625)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.RequestTypeQStoreImpl.lambda$getAllRequestTypesWithSortedGroups$3(RequestTypeQStoreImpl.java:138)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.RequestTypeQStoreImpl.getAllRequestTypesWithSortedGroups(RequestTypeQStoreImpl.java:140)
at com.atlassian.servicedesk.internal.feature.customer.request.requesttype.ValidRequestTypeProvider.lambda$new$0(ValidRequestTypeProvider.java:62)
at com.atlassian.cache.memory.MemoryCacheManager$1$1.load(MemoryCacheManager.java:129)
at com.atlassian.cache.memory.MemoryCacheManager$1$1.load(MemoryCacheManager.java:105)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)
at com.atlassian.cache.memory.DelegatingCachedReference.getUnderLock(DelegatingCachedReference.java:101)
at com.atlassian.cache.memory.DelegatingCachedReference.get(DelegatingCachedReference.java:86)
... 283 more
2018-05-28 12:56:13,787 http-nio-8081-exec-1 ERROR username 776x5686862x1 1p2vsr0 10.x.xx.xxx,127.0.0.1 /rest/project-templates/1.0/templates [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: An error occurred while notifying that a project was created
java.lang.RuntimeException: An error occurred while notifying that a project was created
at com.atlassian.jira.bc.project.DefaultProjectService.notifyHandlersOfProjectCreated(DefaultProjectService.java:397)
at com.atlassian.jira.bc.project.DefaultProjectService.createProjectInternal(DefaultProjectService.java:379)
at com.atlassian.jira.bc.project.DefaultProjectService.createProject(DefaultProjectService.java:349)
at sun.reflect.GeneratedMethodAccessor20432.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:26)
at com.sun.proxy.$Proxy516.createProject(Unknown Source)
... 2 filtered
at java.lang.reflect.Method.invoke(Method.java:498)
at com.atlassian.plugin.osgi.bridge.external.HostComponentFactoryBean$DynamicServiceInvocationHandler.invoke(HostComponentFactoryBean.java:136)
at com.sun.proxy.$Proxy516.createProject(Unknown Source)
at com.atlassian.jira.projecttemplates.service.ProjectTemplateServiceImpl.applyProjectTemplate(ProjectTemplateServiceImpl.java:173)
at com.atlassian.jira.projecttemplates.rest.ProjectTemplatesResource.createProjectFromFormRequest(ProjectTemplatesResource.java:170)
... 3 filtered
at java.lang.reflect.Method.invoke(Method.java:498)
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
... 12 filtered
at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:154)
... 1 filtered
at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:68)
... 32 filtered
at com.atlassian.servicedesk.internal.web.ExternalCustomerLockoutFilter.doFilter(ExternalCustomerLockoutFilter.java:56)
... 13 filtered
at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
... 53 filtered
at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:66)
... 1 filtered
at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:64)
... 16 filtered
at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37)
... 19 filtered
at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30)
... 5 filtered
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.lambda$invokeFilterChain$0(CustomerContextSettingFilter.java:181)
at com.atlassian.servicedesk.internal.api.util.context.ReentrantThreadLocalBasedCodeContext.rteInvoke(ReentrantThreadLocalBasedCodeContext.java:137)
at com.atlassian.servicedesk.internal.api.util.context.ReentrantThreadLocalBasedCodeContext.runOutOfContext(ReentrantThreadLocalBasedCodeContext.java:90)
at com.atlassian.servicedesk.internal.utils.context.CustomerContextServiceImpl.runOutOfCustomerContext(CustomerContextServiceImpl.java:47)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.outOfCustomerContext(CustomerContextSettingFilter.java:174)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilterImpl(CustomerContextSettingFilter.java:130)
at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilter(CustomerContextSettingFilter.java:121)
... 4 filtered
at com.atlassian.jwt.internal.servlet.JwtAuthFilter.doFilter(JwtAuthFilter.java:32)
... 8 filtered
at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
... 4 filtered
at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36)
... 26 filtered
at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25)
... 23 filtered
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745).
--------------------------------------------------------------------------------------------
I found the following article: https://community.atlassian.com/t5/Jira-Service-Desk-questions/Jira-Service-Desk-unable-to-create-project/qaq-p/740346
Which suggested:
- Go to JIRA Admin > Application > Versions & licenses, and uninstall Service Desk from this page.
- You will get a popup with "Also remove my JIRA Service Desk configuration" automatically ticked. Keep this option ticked, and click on "Uninstall"
- Stop JIRA
- Run all these queries in the Database:
- Query to drop the Service Desk tables (the list of tables to drop might be different in your environment. If it is different, please adjust it with the list of tables you got from the Plugin data storage page):
- Queries to delete Service Desk upgrade history:
- Query to clear the pluginstate table:
- Restart JIRA
- Download Service Desk 3.8.2
- Install it via the UPM by uploading the file : https://confluence.atlassian.com/upm/installing-add-ons-273875715.html#Installingadd-ons-Installingbyfileupload
Which seems quite involved and will require some down time. Is there an easier solution to the issue ?