当我们将 hibernate 从 5.1.17.final 升级到 5.2.1.final 时,在执行 IT 测试用例时出现异常

当我们将 hibernate 版本升级到 5.2.1.final 然后运行 ​​IT 测试用例时,我们得到以下异常,但是当 hibernate 版本为 5.1.17.final 时,相同的 IT 将通过。

以下是我们在休眠中获得的异常详细信息:

org.springframework.dao.InvalidDataaccessResourceUsageException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute statement

    at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateaccessException(HibernateJpaDialect.java:281)
    at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255)
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:528)
    at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61)
    at org.springframework.dao.support.DataaccessUtils.translateIfNecessary(DataaccessUtils.java:242)
    at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:153)
    at org.springframework.aop.framework.ReflectiveMethodinvocation.proceed(ReflectiveMethodinvocation.java:186)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)

以下是我们与 PostGres 相关的例外情况。

Caused by: org.postgresql.util.PSQLException: ERROR: column "emp_id" is of type integer but expression is of type bytea
  Hint: You will need to rewrite or cast the expression.
  Position: 64
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2468)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2211)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:309)
    at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:446)
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:370)
    at org.postgresql.jdbc.PgPreparedStatement.executeWithflags(PgPreparedStatement.java:149)
    at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:124)
    at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
    at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
    at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
    ... 50 more

以下是项目中使用的版本:

 <hibernate.version>5.2.1.Final</hibernate.version>
        <hibernate-extensions.version>1.2.1</hibernate-extensions.version>
        <hibernate.validator.version>6.0.18.Final</hibernate.validator.version>
        <hibernate-jpa-21.version>1.0.0.Final</hibernate-jpa-21.version>
        <validation-api.version>2.0.0.Final</validation-api.version>
        <postgres.jdbc.driver.version>42.2.6</postgres.jdbc.driver.version>
wjs1020 回答:当我们将 hibernate 从 5.1.17.final 升级到 5.2.1.final 时,在执行 IT 测试用例时出现异常

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1012170.html

大家都在问