fli-iam / shanoir-ng

Shanoir (SHAring iN vivO Imaging Resources)
GNU General Public License v3.0
22 stars 22 forks source link

Can't delete exam if linked to dataset_property #2196

Open youennmerel opened 7 months ago

youennmerel commented 7 months ago

Regression ? Should have been resolved in https://github.com/fli-iam/shanoir-ng/pull/2111

"could not execute statement [Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`dataset_property`, CONSTRAINT `FK1mcyt0h60808jmj3shlvge9c8` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))] [delete from dataset where id=?]; SQL [delete from dataset where id=?]; constraint [null]",
youennmerel commented 7 months ago

I reproduce the problem, but it is not systematic apparently.

ofsep-qualif-datasets-1  | 2024-04-23T16:59:18.969+02:00 ERROR 1 --- [nio-9904-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper   : Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`processing_resource`, CONSTRAINT `FK7971ykr4l94b3qgns4do405qe` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))
ofsep-qualif-datasets-1  | 2024-04-23T16:59:18.972+02:00  WARN 1 --- [nio-9904-exec-1] o.s.n.s.c.GlobalExceptionHandler         : Error in the rest service. 
ofsep-qualif-datasets-1  | 
ofsep-qualif-datasets-1  | org.shanoir.ng.shared.exception.RestServiceException: org.springframework.dao.DataIntegrityViolationException: could not execute statement [Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`processing_resource`, CONSTRAINT `FK7971ykr4l94b3qgns4do405qe` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))] [delete from dataset where id=?]; SQL [delete from dataset where id=?]; constraint [null]
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dataset.controler.DatasetApiController.deleteDataset(DatasetApiController.java:156)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
ofsep-qualif-datasets-1  |  at java.base/java.lang.reflect.Method.invoke(Method.java:568)
ofsep-qualif-datasets-1  |  at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:351)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ofsep-qualif-datasets-1  |  at org.springframework.security.authorization.method.AuthorizationManagerBeforeMethodInterceptor.invoke(AuthorizationManagerBeforeMethodInterceptor.java:198)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717)
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dataset.controler.DatasetApiController$$SpringCGLIB$$0.deleteDataset(<generated>)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
ofsep-qualif-datasets-1  |  at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
ofsep-qualif-datasets-1  |  at java.base/java.lang.reflect.Method.invoke(Method.java:568)
ofsep-qualif-datasets-1  |  at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:261)
ofsep-qualif-datasets-1  |  at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:189)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.FrameworkServlet.doDelete(FrameworkServlet.java:936)
ofsep-qualif-datasets-1  |  at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:596)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
ofsep-qualif-datasets-1  |  at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dicom.web.StowRSMultipartRelatedRequestFilter.doFilter(StowRSMultipartRelatedRequestFilter.java:93)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dicom.web.StowRSMultipartRelatedRequestFilter.doFilter(StowRSMultipartRelatedRequestFilter.java:93)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.oauth2.server.resource.web.authentication.BearerTokenAuthenticationFilter.doFilterInternal(BearerTokenAuthenticationFilter.java:145)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
ofsep-qualif-datasets-1  |  at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
ofsep-qualif-datasets-1  |  at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)
ofsep-qualif-datasets-1  |  at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:225)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
ofsep-qualif-datasets-1  |  at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
ofsep-qualif-datasets-1  |  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
ofsep-qualif-datasets-1  |  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
ofsep-qualif-datasets-1  |  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
ofsep-qualif-datasets-1  |  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340)
ofsep-qualif-datasets-1  |  at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391)
ofsep-qualif-datasets-1  |  at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
ofsep-qualif-datasets-1  |  at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
ofsep-qualif-datasets-1  |  at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
ofsep-qualif-datasets-1  |  at java.base/java.lang.Thread.run(Thread.java:840)
ofsep-qualif-datasets-1  | Caused by: org.springframework.dao.DataIntegrityViolationException: could not execute statement [Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`processing_resource`, CONSTRAINT `FK7971ykr4l94b3qgns4do405qe` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))] [delete from dataset where id=?]; SQL [delete from dataset where id=?]; constraint [null]
ofsep-qualif-datasets-1  |  at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:290)
ofsep-qualif-datasets-1  |  at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:241)
ofsep-qualif-datasets-1  |  at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:565)
ofsep-qualif-datasets-1  |  at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:794)
ofsep-qualif-datasets-1  |  at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:757)
ofsep-qualif-datasets-1  |  at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:669)
ofsep-qualif-datasets-1  |  at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:419)
ofsep-qualif-datasets-1  |  at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ofsep-qualif-datasets-1  |  at org.springframework.security.authorization.method.AuthorizationManagerBeforeMethodInterceptor.invoke(AuthorizationManagerBeforeMethodInterceptor.java:198)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ofsep-qualif-datasets-1  |  at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717)
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dataset.service.DatasetServiceImpl$$SpringCGLIB$$0.deleteById(<generated>)
ofsep-qualif-datasets-1  |  at org.shanoir.ng.dataset.controler.DatasetApiController.deleteDataset(DatasetApiController.java:147)
ofsep-qualif-datasets-1  |  ... 122 common frames omitted
ofsep-qualif-datasets-1  | Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement [Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`processing_resource`, CONSTRAINT `FK7971ykr4l94b3qgns4do405qe` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))] [delete from dataset where id=?]
ofsep-qualif-datasets-1  |  at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:62)
ofsep-qualif-datasets-1  |  at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:58)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.mutation.internal.AbstractMutationExecutor.performNonBatchedMutation(AbstractMutationExecutor.java:107)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.mutation.internal.MutationExecutorStandard.lambda$performNonBatchedOperations$1(MutationExecutorStandard.java:214)
ofsep-qualif-datasets-1  |  at java.base/java.util.TreeMap.forEach(TreeMap.java:1282)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.mutation.internal.PreparedStatementGroupStandard.forEachStatement(PreparedStatementGroupStandard.java:90)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.mutation.internal.MutationExecutorStandard.performNonBatchedOperations(MutationExecutorStandard.java:214)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.mutation.internal.AbstractMutationExecutor.execute(AbstractMutationExecutor.java:52)
ofsep-qualif-datasets-1  |  at org.hibernate.persister.entity.mutation.AbstractDeleteCoordinator.doStaticDelete(AbstractDeleteCoordinator.java:279)
ofsep-qualif-datasets-1  |  at org.hibernate.persister.entity.mutation.AbstractDeleteCoordinator.coordinateDelete(AbstractDeleteCoordinator.java:87)
ofsep-qualif-datasets-1  |  at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2979)
ofsep-qualif-datasets-1  |  at org.hibernate.action.internal.EntityDeleteAction.execute(EntityDeleteAction.java:131)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:632)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:499)
ofsep-qualif-datasets-1  |  at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:363)
ofsep-qualif-datasets-1  |  at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:41)
ofsep-qualif-datasets-1  |  at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:127)
ofsep-qualif-datasets-1  |  at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1423)
ofsep-qualif-datasets-1  |  at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:504)
ofsep-qualif-datasets-1  |  at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:2339)
ofsep-qualif-datasets-1  |  at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:1996)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:439)
ofsep-qualif-datasets-1  |  at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:169)
ofsep-qualif-datasets-1  |  at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit(JdbcResourceLocalTransactionCoordinatorImpl.java:267)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:101)
ofsep-qualif-datasets-1  |  at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:561)
ofsep-qualif-datasets-1  |  ... 135 common frames omitted
ofsep-qualif-datasets-1  | Caused by: java.sql.SQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`datasets`.`processing_resource`, CONSTRAINT `FK7971ykr4l94b3qgns4do405qe` FOREIGN KEY (`dataset_id`) REFERENCES `dataset` (`id`))
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1061)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1009)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1320)
ofsep-qualif-datasets-1  |  at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:994)
ofsep-qualif-datasets-1  |  at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
ofsep-qualif-datasets-1  |  at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
ofsep-qualif-datasets-1  |  at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:194)
ofsep-qualif-datasets-1  |  ... 159 common frames omitted
ofsep-qualif-datasets-1  |