Causal Forecasting process is failling with error unique key constraint in Servigistics Service parts management
Applies To
- Servigistics Service Parts Management 11.4.1
Description
- Causal Forecasting process is failling with error unique key constraint
- Autopilot.log contains
-
ERROR com.svg.core.util.EventLog - Task Causal Forecast Detail failed with message: StatementCallback; uncategorized SQLException for SQL [alter table IPCSTMP_G9316 add constraint IPCSTMP_G9316_PK primary key (ProductID, LocID, PartID, StartDate)]; SQL state [72000]; error code [2437
org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL [alter table IPCSTMP_G9316 add constraint IPCSTMP_G9316_PK primary key (ProductID, LocID, PartID, StartDate)]; SQL state [72000]; error code [2437]; ORA-02437: cannot validate (<SCHEMA>.IPCSTMP_G9316_PK) - primary key violated
; nested exception is java.sql.SQLException: ORA-02437: cannot validate (<SCHEMA>.IPCSTMP_G9316_PK) - primary key violatedat org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:415)
at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:534)
at com.svg.core.database.metadata.TableImpl.createPrimaryKeys(TableImpl.java:486)
at com.svg.core.database.temptable.TempTableImpl$1TableWrapper.createPrimaryKeys(TempTableImpl.java:182)
at com.svg.core.database.metadata.TableImpl.addPrimaryKeys(TableImpl.java:453)
at com.svg.core.database.metadata.TableImpl.setPrimaryKeys(TableImpl.java:334)
at com.svg.core.database.temptable.TempTableImpl.setPrimaryKeys(TempTableImpl.java:193)
at com.svg.core.database.temptable.LocalTempTable.setPrimaryKeys(LocalTempTable.java:7)
at com.svg.core.database.temptable.TempTableImpl.build(TempTableImpl.java:59)
at com.svg.core.database.temptable.LocalTempTable.build(LocalTempTable.java:7)
at com.svg.core.process.BatchConnectorImpl.newLocalTempTable(BatchConnectorImpl.java:495)
at com.svg.planning.process.forecast.causal.ProductBomRollout.newProductBomTable(ProductBomRollout.java:114)
at com.svg.planning.process.forecast.causal.ProductBomRollout.process(ProductBomRollout.java:32)
at com.svg.core.process.BatchConnectorImpl.doRun(BatchConnectorImpl.java:103)
at com.svg.core.process.BatchConnectorImpl.lambda$run$0(BatchConnectorImpl.java:91)
at com.svg.core.database.TransactionUtil.lambda$withNone$1(TransactionUtil.java:100)
at com.svg.core.database.TransactionUtil.execute(TransactionUtil.java:52)
at com.svg.core.database.TransactionUtil.withNone(TransactionUtil.java:99)
at com.svg.core.process.BatchConnectorImpl.run(BatchConnectorImpl.java:91)
at com.svg.planning.process.forecast.causal.CausalForecastFailureRateInput.newInputTable(CausalForecastFailureRateInput.java:145)
at com.svg.planning.process.forecast.causal.CausalForecastFailureRateInput.prepare(CausalForecastFailureRateInput.java:53)
at com.svg.core.process.AbstractProcess.run(AbstractProcess.java:21)
at com.svg.planning.process.forecast.causal.CausalForecastFailureRateConnector.process(CausalForecastFailureRateConnector.java:26)
at com.svg.core.process.BatchConnectorImpl.doRun(BatchConnectorImpl.java:103)
at com.svg.core.process.BatchConnectorImpl.lambda$run$0(BatchConnectorImpl.java:91)
at com.svg.core.database.TransactionUtil.lambda$withNone$1(TransactionUtil.java:100)
at com.svg.core.database.TransactionUtil.execute(TransactionUtil.java:52)
at com.svg.core.database.TransactionUtil.withNone(TransactionUtil.java:99)
at com.svg.core.process.BatchConnectorImpl.run(BatchConnectorImpl.java:91)
at com.svg.planning.process.forecast.causal.CausalForecastDetailConnector.doProcess(CausalForecastDetailConnector.java:28)
at com.svg.core.process.ThreadableConnector.process(ThreadableConnector.java:32)
at com.svg.core.process.ThreadableConnector.process(ThreadableConnector.java:23)
at com.svg.core.process.BatchConnectorImpl.doRun(BatchConnectorImpl.java:103)
at com.svg.core.process.BatchConnectorImpl.lambda$run$0(BatchConnectorImpl.java:91)
at com.svg.core.database.TransactionUtil.lambda$withNone$1(TransactionUtil.java:100)
at com.svg.core.database.TransactionUtil.execute(TransactionUtil.java:52)
at com.svg.core.database.TransactionUtil.withNone(TransactionUtil.java:99)
at com.svg.core.process.BatchConnectorImpl.run(BatchConnectorImpl.java:91)
at com.svg.core.task.BatchTask.runConnector(BatchTask.java:84)
at com.svg.core.task.AbstractTask.run(AbstractTask.java:215)
at com.svg.core.task.BatchTask.run(BatchTask.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:52)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
at com.sun.proxy.$Proxy708.run(Unknown Source)
at com.svg.core.service.impl.TaskServiceImpl$1.run(TaskServiceImpl.java:456)
at java.lang.Thread.run(Thread.java:748)
at com.svg.core.util.ThreadUtil$1.run(ThreadUtil.java:43)
Caused by: java.sql.SQLException: ORA-02437: cannot validate (<SCHEMA>.IPCSTMP_G9316_PK) - primary key violatedat oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1059)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:587)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:210)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:30)
at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:931)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1150)
at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1707)
at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1670)
at oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:310)
at sun.reflect.GeneratedMethodAccessor287.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.util.ReflectionUtils.invokeJdbcMethod(ReflectionUtils.java:249)
at com.svg.core.database.support.ProxyHandler$1.invoke(ProxyHandler.java:29)
at com.svg.core.database.support.QueryMethodInvoker.invoke(QueryMethodInvoker.java:36)
at com.svg.core.database.support.ProxyHandler$2.doInDeadlockRetry(ProxyHandler.java:63)
at com.svg.core.database.support.DeadlockRetry.execute(DeadlockRetry.java:28)
at com.svg.core.database.support.ProxyHandler.invoke(ProxyHandler.java:60)
at com.svg.core.database.support.StatementHandler.invoke(StatementHandler.java:42)
at com.sun.proxy.$Proxy83.executeUpdate(Unknown Source)
at org.springframework.jdbc.core.JdbcTemplate$1UpdateStatementCallback.doInStatement(JdbcTemplate.java:523)
at org.springframework.jdbc.core.JdbcTemplate$1UpdateStatementCallback.doInStatement(JdbcTemplate.java:520)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:404)
... 60 more
-