为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:银河麒麟
【CPU】:
【问题描述】*:
执行简单的查询sql报错:
select
*
from
a
where
i_status = 1
and id in ('1',
'36',
'42',
'430000XX',
'140000XX',
'c79b57f9b255412394c08afbde24fab2',
'110000XX',
'210000XX',
'130101000020088888_00',
'100000XX002160613996',
'120000XX',
'220000XX',
'130000XX',
'230000XX',
'1acd2109167e48c9a7aba7a01aaedcda');
查看日志:
method=service.impl.DeviceOrgServiceImpl.getDeviceOrgLevelMap location=AtExceptionExit
ts=2025-01-20 19:44:38.729; [cost=17.33656ms] result=@ArrayList[
@Object[][
@ArrayList[
@String[1],
@String[36],
@String[42],
@String[430000XX],
@String[140000XX],
@String[c79b57f9b255412394c08afbde24fab2],
@String[110000XX],
@String[210000XX],
@String[130101000020088888_00],
@String[100000XX002160613996],
@String[120000XX],
@String[220000XX],
@String[130000XX],
@String[230000XX],
@String[1acd2109167e48c9a7aba7a01aaedcda],
],
],
null,
org.springframework.orm.jpa.JpaSystemException: could not execute batch; nested exception is org.hibernate.exception.GenericJDBCException: could not execute batch
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:331)
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:233)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:551)
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61)
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:243)
。。。。
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: org.hibernate.exception.GenericJDBCException: could not execute batch
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113)
at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:135)
at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.doExecuteBatch(BatchingBatch.java:110)
at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.execute(AbstractBatchImpl.java:153)
at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.executeBatch(JdbcCoordinatorImpl.java:198)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:633)
at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:478)
。。。
... 60 more
Caused by: java.sql.BatchUpdateException: The data is too large to support.
at dm.jdbc.driver.DBError.throwBatchUpdateException(DBError.java:713)
at dm.jdbc.driver.DmdbPreparedStatement.executeBatchByRow(DmdbPreparedStatement.java:428)
at dm.jdbc.driver.DmdbPreparedStatement.do_executeLargeBatch(DmdbPreparedStatement.java:563)
at dm.jdbc.driver.DmdbPreparedStatement.do_executeBatch(DmdbPreparedStatement.java:514)
at dm.jdbc.driver.DmdbPreparedStatement.executeBatch(DmdbPreparedStatement.java:1518)
。。。
麻烦专家老师帮看下,怎么解决这个问题,谢谢
现在使用的数据库,驱动分别是什么版本?
这个日志是您修改过的,还是源日志输出。