-
Notifications
You must be signed in to change notification settings - Fork 53
Open
Description
Hello,
I'm running into an issue with the following scenario:
- publishing (and then persisting) twice the same message (with same
uniqueRequestId)- I always get and
UndeclaredThrowableExceptionexception.
- I always get and
java.lang.reflect.UndeclaredThrowableException: null
at com.gruelbox.transactionoutbox.spring.$Proxy215.executeUpdate(Unknown Source)
at com.gruelbox.transactionoutbox.DefaultPersistor.save(DefaultPersistor.java:124)
at com.gruelbox.transactionoutbox.TransactionOutboxImpl.lambda$schedule$17(TransactionOutboxImpl.java:234)
at com.gruelbox.transactionoutbox.spi.Utils.uncheckedly(Utils.java:50)
at com.gruelbox.transactionoutbox.TransactionOutboxImpl.lambda$schedule$18(TransactionOutboxImpl.java:219)
at com.gruelbox.transactionoutbox.spi.ProxyFactory.lambda$constructProxy$2(ProxyFactory.java:87)
at com.test.newapp.rabbit.out.dummy.DummyUpdatedEventRabbitMqPublisherImpl$ByteBuddy$WihNmQUu.publish(Unknown Source)
at com.test.newapp.app.configurations.transactionoutbox.TransactionOutBoxPublishersConfiguration$OutBoxDummyUpdatedEventPublisher.publish(TransactionOutBoxPublishersConfiguration.java:51)
at com.test.newapp.app.configurations.transactionoutbox.OutBoxController.publish(OutBoxController.java:98)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:351)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:385)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717)
at com.test.newapp.app.configurations.transactionoutbox.OutBoxController$$SpringCGLIB$$0.publish(<generated>)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:259)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:192)
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:920)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:830)
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.doPost(FrameworkServlet.java:914)
...
Caused by: java.lang.reflect.InvocationTargetException: null
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:118)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at com.gruelbox.transactionoutbox.spring.SpringTransactionManager$BatchCountingStatementHandler.invoke(SpringTransactionManager.java:148)
... 84 common frames omitted
Caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "txno_outbox_uniquerequestid_key"
Detail: Key (uniquerequestid)=(1234@test.com) already exists.
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2713)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2401)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:368)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:498)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:415)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:190)
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:152)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
