Article - CS327774
AutoPilot process Get Host Data failed with "ORA-02437: primary key violated" in Servigistics Service Parts Management
Modified: 14-Apr-2023
Applies To
- Servigistics Service Parts Management 11.4.1 to 13.0.0.0
Description
- Importing Demand with HostDmdOvrByUserID fails at Get Host Data with ORA-02437 for _PK primary key (PartID, LocID, DemandStreamID, HistoryBegDate)
- Importing SKU Overrides with SKUOverrideID fails at GetHostData with ORA-02437
- Gateway process fails when trying to add constraint IPCSTMP_XXXXX_PK primary key
- AutoPilot process Get Host Data failed with primary key violation
- Error in AutoPilot.log file :
Task Get Host Data failed with message: StatementCallback; uncategorized SQLException for SQL [alter table IPCSTMP_G16810 add constraint IPCSTMP_G16810_PK primary key (PartID, LocID, ForecastStreamID, ForecastSliceDate)]; SQL state [72000];
org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL [alter table IPCSTMP_G16810 add constraint IPCSTMP_G16810_PK primary key (PartID, LocID, ForecastStreamID, ForecastSliceDate)]; SQL state [72000]; error code [2437]; ORA-02437: cannot validate (XXXXX.IPCSTMP_G16810_PK) - primary key violated
; nested exception is java.sql.SQLException: ORA-02437: cannot validate (XXXXX.IPCSTMP_G16810_PK) - primary key violated
at 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.gateway.support.SyncGateway.newTableSync(SyncGateway.java:285)
at com.svg.core.gateway.ForecastDetailGateway.syncToCore(ForecastDetailGateway.java:77)
at com.svg.core.gateway.support.SyncGateway.doPopulate(SyncGateway.java:26)
at com.svg.core.gateway.support.AbstractGateway.populate(AbstractGateway.java:142)
at com.svg.core.gateway.executor.GatewayExecutor$PopulateWorkUnit.runSingleThreaded(GatewayExecutor.java:229)
at com.svg.core.autopilot.SubTaskExecutor.run(SubTaskExecutor.java:41)
at com.svg.core.gateway.executor.GatewayExecutor.run(GatewayExecutor.java:278)
at com.svg.core.gateway.executor.GatewayExecutor.populate(GatewayExecutor.java:207)
at com.svg.core.gateway.Gateway.process(Gateway.java:99)
at com.svg.core.gateway.Gateway.process(Gateway.java:77)
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 (XXXXX.IPCSTMP_G16810_PK) - primary key violated
org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL [alter table IPCSTMP_G16810 add constraint IPCSTMP_G16810_PK primary key (PartID, LocID, ForecastStreamID, ForecastSliceDate)]; SQL state [72000]; error code [2437]; ORA-02437: cannot validate (XXXXX.IPCSTMP_G16810_PK) - primary key violated
; nested exception is java.sql.SQLException: ORA-02437: cannot validate (XXXXX.IPCSTMP_G16810_PK) - primary key violated
at 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.gateway.support.SyncGateway.newTableSync(SyncGateway.java:285)
at com.svg.core.gateway.ForecastDetailGateway.syncToCore(ForecastDetailGateway.java:77)
at com.svg.core.gateway.support.SyncGateway.doPopulate(SyncGateway.java:26)
at com.svg.core.gateway.support.AbstractGateway.populate(AbstractGateway.java:142)
at com.svg.core.gateway.executor.GatewayExecutor$PopulateWorkUnit.runSingleThreaded(GatewayExecutor.java:229)
at com.svg.core.autopilot.SubTaskExecutor.run(SubTaskExecutor.java:41)
at com.svg.core.gateway.executor.GatewayExecutor.run(GatewayExecutor.java:278)
at com.svg.core.gateway.executor.GatewayExecutor.populate(GatewayExecutor.java:207)
at com.svg.core.gateway.Gateway.process(Gateway.java:99)
at com.svg.core.gateway.Gateway.process(Gateway.java:77)
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 (XXXXX.IPCSTMP_G16810_PK) - primary key violated
This is a printer-friendly version of Article 327774 and may be out of date. For the latest version click CS327774