MauroDataMapper / mdm-ui

Web front-end for the Mauro Data Mapper
Apache License 2.0
7 stars 5 forks source link

EntityNotFoundException when trying to merge a branch into main #867

Open jaredleo opened 1 month ago

jaredleo commented 1 month ago

Description

When trying to merge a branch of a data model after editing some key-value pairs in an enumeration, the procedure fails with a EntityNotFoundException.

Expected behavior

I expect the branch to merge into the main without error

Error details

type: "EntityNotFoundException"
message: "deleted object would be re-saved by cascade (remove deleted object from associations): [uk.ac.ox.softeng.maurodatamapper.core.facet.BreadcrumbTree#2744bdf4-ffac-412b-9847-ca3ed3c3a581]"
stacktrace:
0: "org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:133)"
1: "org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181)"
2: "org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188)"
3: "org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1411)"
4: "org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1394)"
5: "org.grails.orm.hibernate.AbstractHibernateGormInstanceApi$_delete_closure1.doCall(AbstractHibernateGormInstanceApi.groovy:202)"
6: "org.grails.orm.hibernate.GrailsHibernateTemplate.doExecute(GrailsHibernateTemplate.java:297)"
7: "org.grails.orm.hibernate.GrailsHibernateTemplate.execute(GrailsHibernateTemplate.java:241)"
8: "org.grails.orm.hibernate.GrailsHibernateTemplate.execute(GrailsHibernateTemplate.java:120)"
9: "org.grails.orm.hibernate.AbstractHibernateGormInstanceApi.delete(AbstractHibernateGormInstanceApi.groovy:199)"
10: "org.grails.datastore.gorm.GormEntity$Trait$Helper.delete(GormEntity.groovy:197)"
11: "uk.ac.ox.softeng.maurodatamapper.datamodel.item.datatype.enumeration.EnumerationValueService.delete(EnumerationValueService.groovy:69)"
12: "uk.ac.ox.softeng.maurodatamapper.core.model.ModelService.processDeletionPatchOfModelItem(ModelService.groovy:698)"
13: "uk.ac.ox.softeng.maurodatamapper.datamodel.DataModelService.$tt__dataModelService_processDeletionPatchOfModelItem(DataModelService.groovy:1145)"
14: "grails.gorm.transactions.GrailsTransactionTemplate$2.doInTransaction(GrailsTransactionTemplate.groovy:94)"
15: "org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)"
16: "grails.gorm.transactions.GrailsTransactionTemplate.execute(GrailsTransactionTemplate.groovy:91)"
17: "uk.ac.ox.softeng.maurodatamapper.core.model.ModelService.processDeletionPatchIntoModel(ModelService.groovy:647)"
18: "uk.ac.ox.softeng.maurodatamapper.core.model.ModelService$_mergeObjectPatchDataIntoModel_closure7.doCall(ModelService.groovy:594)"
19: "uk.ac.ox.softeng.maurodatamapper.core.model.ModelService.mergeObjectPatchDataIntoModel(ModelService.groovy:589)"
20: "uk.ac.ox.softeng.maurodatamapper.core.controller.ModelController.$tt__mergeInto(ModelController.groovy:304)"
21: "grails.gorm.transactions.GrailsTransactionTemplate$2.doInTransaction(GrailsTransactionTemplate.groovy:94)"
22: "org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)"
23: "grails.gorm.transactions.GrailsTransactionTemplate.execute(GrailsTransactionTemplate.groovy:91)"
24: "org.grails.core.DefaultGrailsControllerClass$MethodHandleInvoker.invoke(DefaultGrailsControllerClass.java:223)"
25: "org.grails.core.DefaultGrailsControllerClass.invoke(DefaultGrailsControllerClass.java:188)"
26: "org.grails.web.mapping.mvc.UrlMappingsInfoHandlerAdapter.handle(UrlMappingsInfoHandlerAdapter.groovy:90)"
27: "org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1071)"
28: "org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:964)"
29: "org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)"
30: "org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:920)"
31: "org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)"
32: "org.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilterInternal(GrailsWebRequestFilter.java:77)"
33: "org.grails.web.filters.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:67)"
34: "org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:126)"
35: "org.springframework.boot.web.servlet.support.ErrorPageFilter.access$000(ErrorPageFilter.java:64)"
36: "org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:101)"
37: "org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:119)"

Environment

Desktop

jamesrwelch commented 1 month ago

Thanks! We'll take a look