Conversation: java.sql.SQLIntegrityConstraintViolationException:Duplicate entry

Description

There seems to be an issue when there is more than 1 Conversations Discussion. The instructor created 2 graded Discussions, one linked to a GB, the other created a GB item. I believe the Discussion that creates the GB is the one with the issue. I tested as 2 different students, the video is of the first student who received a stacktrace when replying to D2 - the Discussion that created its own GB item. I then created a third Discussion that was ungraded. I had the second student reply to it and the Discussion that was linked to the GB item - so far so good - then had the student try to answer the Discussion that created it’s own GB item (D2) and received a stacktrace also.

The D2 post for both students is missing.

2 console errors:

XHRGET https://trunk-maria.nightly.sakaiproject.org/api/sites/7db6855d-6e53-404a-a0e1-94544199d985/topics/f29de02d-e03b-443d-b95e-c5cb0371f208/posts?page=0&sort=OLDEST [HTTP/2 500 91ms]
Error: Network error while retrieving posts from /api/sites/7db6855d-6e53-404a-a0e1-94544199d985/topics/f29de02d-e03b-443d-b95e-c5cb0371f208/posts?page=0&sort=OLDEST _getPosts SakaiTopic.js:496 promise callback*_getPosts SakaiTopic.js:491 set topic SakaiTopic.js:125 set reactive-element.ts:756 _$AK reactive-element.ts:1218 attributeChangedCallback reactive-element.ts:1148 j lit-html.ts:1944 _$AI lit-html.ts:1917 p lit-html.ts:1276 $ lit-html.ts:1630 _$AI lit-html.ts:1469 p lit-html.ts:1276 $ lit-html.ts:1630 _$AI lit-html.ts:1469 pt lit-html.ts:2269 update lit-element.ts:163 performUpdate reactive-element.ts:1441 scheduleUpdate reactive-element.ts:1338 _$ET reactive-element.ts:1310 requestUpdate reactive-element.ts:1268 set reactive-element.ts:757 _selectTopic SakaiConversations.js:262 _topicSelected SakaiConversations.js:241 handleEvent lit-html.ts:2102 _topicSelected SakaiTopicSummary.js:21 handleEvent lit-html.ts:2102 _$AI lit-html.ts:2091 p lit-html.ts:1276 $ lit-html.ts:1644 _$AI lit-html.ts:1469 pt lit-html.ts:2269 update lit-element.ts:163 performUpdate reactive-element.ts:1441 scheduleUpdate reactive-element.ts:1338 _$ET reactive-element.ts:1310 requestUpdate reactive-element.ts:1268 _$Ev reactive-element.ts:1017 $ reactive-element.ts:1000 _ lit-element.ts:122 O SakaiShadowElement.js:5 G SakaiElement.js:3 $ SakaiTopicSummary.js:12 u lit-html.ts:1212 $ lit-html.ts:1633 _$AI lit-html.ts:1469 k lit-html.ts:1710 _$AI lit-html.ts:1488 p lit-html.ts:1276 $ lit-html.ts:1644 _$AI lit-html.ts:1469 p lit-html.ts:1276 $ lit-html.ts:1644 _$AI lit-html.ts:1469 p lit-html.ts:1276 $ lit-html.ts:1644 SakaiTopic.js:498:28

Server logs:

11-Mar-2025 17:01:13.714 WARN [http-nio-20313-exec-24] o.m.j.m.s.ErrorPacket.warn Error: 1062-23000: Duplicate entry 'f29de02d-e03b-443d-b95e-c5cb0371f208-29946e37-9058-4df6-9cf3-...' for key 'UniqueTopicStatus' 11-Mar-2025 17:01:13.714 ERROR [http-nio-20313-exec-24] o.h.e.j.s.SqlExceptionHelper.logExceptions (conn=55422) Duplicate entry 'f29de02d-e03b-443d-b95e-c5cb0371f208-29946e37-9058-4df6-9cf3-...' for key 'UniqueTopicStatus'
11-Mar-2025 17:01:13.717 ERROR [http-nio-20313-exec-24] o.s.w.e.GlobalExceptionHandler.handleAllUncaughtException Uncaught exception javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:762) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:742) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.sakaiproject.springframework.data.SpringCrudRepositoryImpl.save(SpringCrudRepositoryImpl.java:71) ~[sakai-kernel-api-25-SNAPSHOT.jar:25-SNAPSHOT] at jdk.internal.reflect.GeneratedMethodAccessor398.invoke(Unknown Source) ~[?:?] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[?:?] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:241) ~[spring-aop-5.3.39.jar:5.3.39] at jdk.proxy3/jdk.proxy3.$Proxy399.save(Unknown Source) ~[?:?] at org.sakaiproject.conversations.impl.ConversationsServiceImpl.getPostsByTopicId(ConversationsServiceImpl.java:1462) ~[?:?] at jdk.internal.reflect.GeneratedMethodAccessor1224.invoke(Unknown Source) ~[?:?] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[?:?] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.39.jar:5.3.39] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.39.jar:5.3.39] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:241) ~[spring-aop-5.3.39.jar:5.3.39] at jdk.proxy3/jdk.proxy3.$Proxy404.getPostsByTopicId(Unknown Source) ~[?:?] at org.sakaiproject.webapi.controllers.ConversationsController.getTopicPosts(ConversationsController.java:290) ~[classes/:?] at jdk.internal.reflect.GeneratedMethodAccessor1223.invoke(Unknown Source) ~[?:?] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[?:?] at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) ~[spring-web-5.3.39.jar:5.3.39] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) ~[spring-web-5.3.39.jar:5.3.39] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) ~[spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:903) ~[spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:809) ~[spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) [spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) [spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) [spring-webmvc-5.3.39.jar:?] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) [spring-webmvc-5.3.39.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) [servlet-api.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) [spring-webmvc-5.3.39.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) [servlet-api.jar:4.0.FR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) [catalina.jar:9.0.76] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) [catalina.jar:9.0.76] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) [tomcat-websocket.jar:9.0.76] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) [catalina.jar:9.0.76] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) [catalina.jar:9.0.76] at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:501) [sakai-kernel-api-25-SNAPSHOT.jar:25-SNAPSHOT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) [catalina.jar:9.0.76] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) [catalina.jar:9.0.76] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) [catalina.jar:9.0.76] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) [catalina.jar:9.0.76] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) [catalina.jar:9.0.76] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) [catalina.jar:9.0.76] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) [catalina.jar:9.0.76] at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:768) [catalina.jar:9.0.76] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) [catalina.jar:9.0.76] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) [catalina.jar:9.0.76] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) [tomcat-coyote.jar:9.0.76] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) [tomcat-coyote.jar:9.0.76] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) [tomcat-coyote.jar:9.0.76] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) [tomcat-coyote.jar:9.0.76] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) [tomcat-coyote.jar:9.0.76] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [tomcat-util.jar:9.0.76] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [tomcat-util.jar:9.0.76] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:9.0.76] at java.base/java.lang.Thread.run(Thread.java:840) [?:?] Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:59) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:37) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:200) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.dialect.identity.GetGeneratedKeysDelegate.executeAndExtract(GetGeneratedKeysDelegate.java:58) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:43) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3279) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3914) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:84) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:645) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:282) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:317) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:329) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:286) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:192) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:122) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:185) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:128) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:55) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:756) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] ... 69 more Caused by: java.sql.SQLIntegrityConstraintViolationException: (conn=55422) Duplicate entry 'f29de02d-e03b-443d-b95e-c5cb0371f208-29946e37-9058-4df6-9cf3-...' for key 'UniqueTopicStatus' at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:297) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:378) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.message.ClientMessage.readPacket(ClientMessage.java:187) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:1347) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:1286) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:1205) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.client.impl.StandardClient.execute(StandardClient.java:1129) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.ServerPreparedStatement.executeStandard(ServerPreparedStatement.java:135) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:82) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.ServerPreparedStatement.executeLargeUpdate(ServerPreparedStatement.java:432) ~[mariadb-java-client-3.5.2.jar:?] at org.mariadb.jdbc.ServerPreparedStatement.executeUpdate(ServerPreparedStatement.java:409) ~[mariadb-java-client-3.5.2.jar:?] at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61) ~[HikariCP-6.0.0.jar:?] at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java) ~[HikariCP-6.0.0.jar:?] at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.dialect.identity.GetGeneratedKeysDelegate.executeAndExtract(GetGeneratedKeysDelegate.java:58) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:43) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3279) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3914) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:84) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:645) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:282) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:317) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:329) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:286) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:192) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:122) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:185) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:128) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:55) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:756) ~[hibernate-core-5.6.15.Final.jar:5.6.15.Final] ... 69 more
11-Mar-2025 17:01:13.722 ERROR [http-nio-20313-exec-24] o.s.w.e.GlobalExceptionHandler.createErrorResponse WEBAPI An unexpected error occurred: javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement

Site (which disappears tonight) https://trunk-maria.nightly.sakaiproject.org/portal/site/7db6855d-6e53-404a-a0e1-94544199d985

log in as any of the students to test this, pw: puzzled

ramon
rodell

Attachments

1
  • 11 Mar 2025, 09:39 PM

Activity

Show:

Andrea Schmidt 2 days ago

Just an FYI…The stacktrace is now also affecting Conversations > Questions

Automation for Jira 3 days ago

A pull request has been created, "SAK-51137 Conversations creates a duplicate TopicStatus when topic is clicked", you can see it at https://github.com/sakaiproject/sakai/pull/13445

Details

Priority

Affects versions

Components

Assignee

Reporter

Environment

25x: https://trunk-maria.nightly.sakaiproject.org/, build: fe98ab31
Created 4 days ago
Updated 2 days ago

Flag notifications