-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Description
Describe the bug
Partitioning Database Partition Mode enabled, install IG, throw 500 error could not prepare statement Duplicate column name "PARTITION_ID";
if Database Partition Mode disabled, install IG successfully
To Reproduce
- enable DBPM
- Load any IG that contains a codesystem
logs:
2026-02-05 08:50:49.933 [package_registry.packageRegistryJettyServer-160] ERROR M:package_registry R:BcmCNszFugqMaHTz T: S: J: C: o.h.e.jdbc.spi.SqlExceptionHelper - Duplicate column name "PARTITION_ID"; SQL statement:
insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?) [42121-232]
2026-02-05 08:50:49.943 [package_registry.packageRegistryJettyServer-160] WARN M:package_registry R:BcmCNszFugqMaHTz T: S: J: C: c.u.f.j.p.PackageInstallerSvcImpl - Failed to upload resource of type CodeSystem with ID CodeSystem/7082/_history/1 - Error: org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement [Duplicate column name "PARTITION_ID"; SQL statement:
insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?) [42121-232]] [insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?)]; SQL [insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?)]
2026-02-05 08:50:49.945 [package_registry.packageRegistryJettyServer-160] ERROR M:package_registry R:BcmCNszFugqMaHTz T: S: J: C: c.c.a.w.BaseControllerWithDefaultExceptionHandlers - Exception caught during rest processing:
ca.uhn.fhir.jpa.packages.ImplementationGuideInstallationException: HAPI-1286: Error installing IG hl7.fhir.r4.core#4.0.1: org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement [Duplicate column name "PARTITION_ID"; SQL statement:
insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?) [42121-232]] [insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?)]; SQL [insert into TRM_CONCEPT_DESIG (CS_VER_PID,PARTITION_ID,CONCEPT_PID,LANG,PARTITION_DATE,USE_CODE,USE_DISPLAY,USE_SYSTEM,VAL,VAL_VC,PID,PARTITION_ID) values (?,?,?,?,?,?,?,?,?,?,?,?)]
at ca.uhn.fhir.jpa.packages.PackageInstallerSvcImpl.install(PackageInstallerSvcImpl.java:278)
at ca.uhn.fhir.jpa.packages.PackageInstallerSvcImpl.fetchAndInstallDependencies(PackageInstallerSvcImpl.java:326)
at ca.uhn.fhir.jpa.packages.PackageInstallerSvcImpl.fetchAndInstallDependencies(PackageInstallerSvcImpl.java:322)
at ca.uhn.fhir.jpa.packages.PackageInstallerSvcImpl.fetchAndInstallDependencies(PackageInstallerSvcImpl.java:322)
at ca.uhn.fhir.jpa.packages.PackageInstallerSvcImpl.install(PackageInstallerSvcImpl.java:211)
at ca.cdr.endpoint.pkgreg.controller.PackageRegistryWriteController.installBySpec(PackageRegistryWriteController.java:69)
at ca.cdr.endpoint.pkgreg.controller.PackageRegistryWriteController.installByParam(PackageRegistryWriteController.java:100)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360) [4 skipped]
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:172)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:728)
at ca.cdr.endpoint.pkgreg.controller.PackageRegistryWriteController$$SpringCGLIB$$0.installByParam(<generated>)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:258) [4 skipped]
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:191)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:991)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:896)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:925)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:550)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
at ca.cdr.api.web.ResponseHeaderFilter.doFilter(ResponseHeaderFilter.java:103) [2 skipped]
at ca.cdr.api.web.BlockVerbsFilter.doFilter(BlockVerbsFilter.java:61) [2 skipped]
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108) [2 skipped]
at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:213)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$4(HandlerMappingIntrospector.java:267)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)
at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:238)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) [2 skipped]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at ca.cdr.api.web.JettyHealthCheckFilterHttpResponses.doFilter(JettyHealthCheckFilterHttpResponses.java:150) [2 skipped]
at ca.cdr.api.web.ExceptionLoggerFilter.doFilter(ExceptionLoggerFilter.java:50) [2 skipped]
at ca.cdr.api.web.DefaultResourcesFilter.doFilter(DefaultResourcesFilter.java:57) [2 skipped]
at ca.cdr.api.security.SaveModuleInRequestFilter.doFilter(SaveModuleInRequestFilter.java:80) [2 skipped]
at ca.cdr.api.web.IgnoreInvalidAuthorizationHeaderFilter.doFilter(IgnoreInvalidAuthorizationHeaderFilter.java:53) [2 skipped]
at ca.cdr.api.web.HttpTroubleshootingLogFilter.doFilter(HttpTroubleshootingLogFilter.java:86) [2 skipped]
at ca.cdr.tracing.RequestTracingFilter.doFilter(RequestTracingFilter.java:48) [2 skipped]
at ca.cdr.api.web.ClearSecurityAfterAllProcessingFilter.doFilter(ClearSecurityAfterAllProcessingFilter.java:37) [2 skipped]
at ca.cdr.api.web.CdrQueuedThreadPool.runJob(CdrQueuedThreadPool.java:40) [14 skipped]
at java.base/java.lang.Thread.run(Thread.java:833) [2 skipped]
Expected behavior
IG Loads
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels