升级到6.7,我得到MySQL错误:de.hybris.platform.jalo.JaloSystemException:org.springframework.dao.DuplicateKeyException:query; SQL []; 键" PRIMARY"的条目" 8796158853642"重复;

2020-09-13 17:34发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我正在将项目从6.3升级到6.7。 到6.6为止,一切都很好。 但是,当我尝试升级6.3-> 6.7时,出现了一些非常奇怪的MySQL错误。 有什么想法吗?

  [1; 31mERROR [update-bsnDeIndex-cronJob :: de.hybris.platform.servicelayer.internal.jalo.ServicelayerJob](update-bsnDeIndex-cronJob)[Job]捕获到可抛出的org.springframework.dao  .DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
  de.hybris.platform.jalo.JaloSystemException:org.springframework.dao.DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642" [HY--1]
      在de.hybris.platform.persistence.GenericItemEJBImpl.createGenericItem(GenericItemEJBImpl.java:125)
      在de.hybris.platform.jalo.GenericItem.createItem(GenericItem.java:87)
      在de.hybris.platform.cronjob.jalo.GeneratedCronJobHistory.createItem(GeneratedCronJobHistory.java:109)
      在de.hybris.platform.jalo.Item.newInstanceInternal(Item.java:4136)
      在de.hybris.platform.jalo.Item.access $ 6(Item.java:4077)
      在de.hybris.platform.jalo.Item $ 19.execute(Item.java:4055)
      在de.hybris.platform.tx.Transaction.execute(Transaction.java:1192)
      在de.hybris.platform.tx.Transaction.execute(Transaction.java:1157)
      在de.hybris.platform.jalo.Item.newInstance(Item.java:4050)
      在de.hybris.platform.jalo.type.ComposedType.newInstance(ComposedType.java:1337)
      在de.hybris.platform.jalo.type.ComposedType.newInstance(ComposedType.java:1257)
      在de.hybris.platform.cronjob.jalo.CronJob.instantiateCronJobHistory(CronJob.java:2835)
      在de.hybris.platform.cronjob.jalo.CronJob.createCronJobHistory(CronJob.java:2815)
      在de.hybris.platform.cronjob.jalo.Job.execute(Job.java:1389)
      在de.hybris.platform.cronjob.jalo.Job.performImpl(Job.java:814)
      在de.hybris.platform.cronjob.jalo.Job.access $ 1(Job.java:767)
      在de.hybris.platform.cronjob.jalo.Job $ JobRunable.run(Job.java:686)
      在de.hybris.platform.util.threadpool.PoolableThread.internalRun(PoolableThread.java:208)
      在de.hybris.platform.core.threadregistry.RegistrableThread.run(RegistrableThread.java:134)
  引起原因:de.hybris.platform.persistence.hjmp.HJMPException:org.springframework.dao.DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
      在de.hybris.platform.persistence.GenericBMPBean $ GenericItemEntityState.createEntity(GenericBMPBean.java:1842)处
      在de.hybris.platform.persistence.GenericBMPBean.ejbCreate(GenericBMPBean.java:399)
      在sun.reflect.GeneratedMethodAccessor514.invoke(未知来源)
      在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      在java.lang.reflect.Method.invoke(Method.java:498)
      在de.hybris.platform.util.Utilities.callMethod(Utilities.java:1087)
      在de.hybris.platform.util.Utilities.callMethod(Utilities.java:1077)
      在de.hybris.platform.persistence.framework.HomeInvocationHandler.invoke(HomeInvocationHandler.java:60)
      在com.sun.proxy。$ Proxy116.create(未知来源)
      在de.hybris.platform.persistence.GenericItemEJBImpl.createGenericItem(GenericItemEJBImpl.java:116)
      ...另外18个
  引起原因:org.springframework.dao.DuplicateKeyException:query;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
      在org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:239)
      在org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
      在de.hybris.platform.jdbcwrapper.DataSourceImpl.translateToDataAccessException(DataSourceImpl.java:1030)
      ...另外28个
  引起原因:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的条目" 8796158853642"重复
      在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)处
      在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      在java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      在com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
      在com.mysql.jdbc.Util.getInstance(Util.java:386)
      在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1039)
      在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
      在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
      在com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
      在com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
      在com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
      在com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2427)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2345)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2330)
      在de.hybris.platform.jdbcwrapper.PreparedStatementImpl.executeUpdate(PreparedStatementImpl.java:313)
      在de.hybris.platform.persistence.GenericBMPBean $ GenericItemEntityState.createEntity(GenericBMPBean.java:1817)处
      ...另外27个
  

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我正在将项目从6.3升级到6.7。 到6.6为止,一切都很好。 但是,当我尝试升级6.3-> 6.7时,出现了一些非常奇怪的MySQL错误。 有什么想法吗?

  [1; 31mERROR [update-bsnDeIndex-cronJob :: de.hybris.platform.servicelayer.internal.jalo.ServicelayerJob](update-bsnDeIndex-cronJob)[Job]捕获到可抛出的org.springframework.dao  .DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
  de.hybris.platform.jalo.JaloSystemException:org.springframework.dao.DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642" [HY--1]
      在de.hybris.platform.persistence.GenericItemEJBImpl.createGenericItem(GenericItemEJBImpl.java:125)
      在de.hybris.platform.jalo.GenericItem.createItem(GenericItem.java:87)
      在de.hybris.platform.cronjob.jalo.GeneratedCronJobHistory.createItem(GeneratedCronJobHistory.java:109)
      在de.hybris.platform.jalo.Item.newInstanceInternal(Item.java:4136)
      在de.hybris.platform.jalo.Item.access $ 6(Item.java:4077)
      在de.hybris.platform.jalo.Item $ 19.execute(Item.java:4055)
      在de.hybris.platform.tx.Transaction.execute(Transaction.java:1192)
      在de.hybris.platform.tx.Transaction.execute(Transaction.java:1157)
      在de.hybris.platform.jalo.Item.newInstance(Item.java:4050)
      在de.hybris.platform.jalo.type.ComposedType.newInstance(ComposedType.java:1337)
      在de.hybris.platform.jalo.type.ComposedType.newInstance(ComposedType.java:1257)
      在de.hybris.platform.cronjob.jalo.CronJob.instantiateCronJobHistory(CronJob.java:2835)
      在de.hybris.platform.cronjob.jalo.CronJob.createCronJobHistory(CronJob.java:2815)
      在de.hybris.platform.cronjob.jalo.Job.execute(Job.java:1389)
      在de.hybris.platform.cronjob.jalo.Job.performImpl(Job.java:814)
      在de.hybris.platform.cronjob.jalo.Job.access $ 1(Job.java:767)
      在de.hybris.platform.cronjob.jalo.Job $ JobRunable.run(Job.java:686)
      在de.hybris.platform.util.threadpool.PoolableThread.internalRun(PoolableThread.java:208)
      在de.hybris.platform.core.threadregistry.RegistrableThread.run(RegistrableThread.java:134)
  引起原因:de.hybris.platform.persistence.hjmp.HJMPException:org.springframework.dao.DuplicateKeyException:查询;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
      在de.hybris.platform.persistence.GenericBMPBean $ GenericItemEntityState.createEntity(GenericBMPBean.java:1842)处
      在de.hybris.platform.persistence.GenericBMPBean.ejbCreate(GenericBMPBean.java:399)
      在sun.reflect.GeneratedMethodAccessor514.invoke(未知来源)
      在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      在java.lang.reflect.Method.invoke(Method.java:498)
      在de.hybris.platform.util.Utilities.callMethod(Utilities.java:1087)
      在de.hybris.platform.util.Utilities.callMethod(Utilities.java:1077)
      在de.hybris.platform.persistence.framework.HomeInvocationHandler.invoke(HomeInvocationHandler.java:60)
      在com.sun.proxy。$ Proxy116.create(未知来源)
      在de.hybris.platform.persistence.GenericItemEJBImpl.createGenericItem(GenericItemEJBImpl.java:116)
      ...另外18个
  引起原因:org.springframework.dao.DuplicateKeyException:query;  SQL []; 键" PRIMARY"的条目" 8796158853642"重复; 嵌套的异常是com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的重复条目" 8796158853642"
      在org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:239)
      在org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
      在de.hybris.platform.jdbcwrapper.DataSourceImpl.translateToDataAccessException(DataSourceImpl.java:1030)
      ...另外28个
  引起原因:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:密钥" PRIMARY"的条目" 8796158853642"重复
      在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)处
      在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      在java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      在com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
      在com.mysql.jdbc.Util.getInstance(Util.java:386)
      在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1039)
      在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
      在com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
      在com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
      在com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
      在com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
      在com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2427)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2345)
      在com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2330)
      在de.hybris.platform.jdbcwrapper.PreparedStatementImpl.executeUpdate(PreparedStatementImpl.java:313)
      在de.hybris.platform.persistence.GenericBMPBean $ GenericItemEntityState.createEntity(GenericBMPBean.java:1817)处
      ...另外27个
  
付费偷看设置
发送
4条回答
SKY徐
1楼 · 2020-09-13 17:59.采纳回答

无论出于何种原因,看来您的PK中的 CronJobHistory

类型都有冲突

如果您未在任何业务逻辑中使用历史记录,那么我只需 TRUNCATE 表即可重新开始。

能不能别闹
2楼-- · 2020-09-13 18:21

我找到了一些信息。 调试GenericBMPBean.class的反编译行1414抛出新的HJMPException(this.getPool()。getDataSource()。translateToDataAccessException(var13),this.getDeployment());

我得到:typeInfoMap.itemTableName = cvsynccronjobhistories code = CatalogVersionSyncCronJobHistory

那么也许某些模块需要更新? 但是它将是哪个模块? 不确定,因为涉及的jar是coreserver.jar...。

hongfeng1314
3楼-- · 2020-09-13 18:07

谢谢,这是个好主意,但我做到了:

mysql>从CVSyncCronJobHistories删除; 查询正常,受影响的23行(0.01秒)

然后在HAC中确认,现在我那里有0行:

选择*来自{CatalogVersionSyncCronJobHistory}

然后重新启动hybris,但没有任何改变。

此外,先前我检查了错误消息" PRIMARY"键的重复条目" 8796224356874"; 并且这些条目号不在该表的23行中!

如果它的重复项应该在PK列中……我正试图弄清楚它试图运行哪个SQL……

四川大学会员
4楼-- · 2020-09-13 18:00

好,现在 接缝要好一些! 我还必须清理另一张桌子...

  mysql>从CronJobHistories中删除;
  查询正常,受影响的880行(0.01秒)
  

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答