• org.springframework.jdbc.UncategorizedSQLException: Error attempting to get column 'alarmGroup' from result set. Cause: java.sql.SQLException: Error


    异常展示:

    org.springframework.jdbc.UncategorizedSQLException: Error attempting to get column 'alarmGroup' from result set.  Cause: java.sql.SQLException: Error
    ; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; Error; nested exception is java.sql.SQLException: Error
            at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:90)
            at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:82)
            at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:82)
            at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
            at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
            at com.sun.proxy.$Proxy97.selectList(Unknown Source)
            at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
            at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:137)
            at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:75)
            at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
            at com.sun.proxy.$Proxy116.queryIvsCameraOnOffDetail(Unknown Source)
            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:333)
            at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
            at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
            at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136)
            at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
            at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
            at com.sun.proxy.$Proxy117.queryIvsCameraOnOffDetail(Unknown Source)
            at com.allcam.rss.system.task.IvsOnOffDetailStatisticsTimerJob.doIvsOnOffDetailStatistics(IvsOnOffDetailStatisticsTimerJob.java:55)
            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.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:65)
            at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
            at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
            at java.lang.Thread.run(Thread.java:748)
    Caused by: java.sql.SQLException: Error
            at com.alibaba.druid.pool.DruidDataSource.handleConnectionException(DruidDataSource.java:1543)
            at com.alibaba.druid.pool.DruidPooledConnection.handleException(DruidPooledConnection.java:133)
            at com.alibaba.druid.pool.DruidPooledStatement.checkException(DruidPooledStatement.java:77)
            at com.alibaba.druid.pool.DruidPooledResultSet.checkException(DruidPooledResultSet.java:55)
            at com.alibaba.druid.pool.DruidPooledResultSet.getString(DruidPooledResultSet.java:259)
            at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:37)
            at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:26)
            at org.apache.ibatis.type.BaseTypeHandler.getResult(BaseTypeHandler.java:66)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.applyAutomaticMappings(DefaultResultSetHandler.java:516)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.getRowValue(DefaultResultSetHandler.java:397)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:351)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValues(DefaultResultSetHandler.java:326)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSet(DefaultResultSetHandler.java:299)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSets(DefaultResultSetHandler.java:192)
            at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
            at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
            at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
            at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:324)
            at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
            at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
            at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
            at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
            at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
            at sun.reflect.GeneratedMethodAccessor307.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433)
            ... 32 common frames omitted
    Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
            at java.nio.CharBuffer.allocate(CharBuffer.java:335)
            at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:795)
            at java.nio.charset.Charset.decode(Charset.java:807)
            at com.mysql.jdbc.StringUtils.toString(StringUtils.java:2253)
            at com.mysql.jdbc.ResultSetRow.getString(ResultSetRow.java:701)
            at com.mysql.jdbc.ByteArrayRow.getString(ByteArrayRow.java:69)
            at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5252)
            at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5135)
            at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5174)
            at com.alibaba.druid.pool.DruidPooledResultSet.getString(DruidPooledResultSet.java:257)
            at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:37)
            at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:26)
            at org.apache.ibatis.type.BaseTypeHandler.getResult(BaseTypeHandler.java:66)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.applyAutomaticMappings(DefaultResultSetHandler.java:516)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.getRowValue(DefaultResultSetHandler.java:397)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:351)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValues(DefaultResultSetHandler.java:326)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSet(DefaultResultSetHandler.java:299)
            at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSets(DefaultResultSetHandler.java:192)
            at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
            at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
            at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
            at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:324)
            at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
            at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
            at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
            at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
            at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
            at sun.reflect.GeneratedMethodAccessor307.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433)

    由于这一串异常是源于同一个原因,刚发现该错误的时候,定位的顺序是从上往下定位的,发现没有什么问题,逻辑和代码都是ok的。

    当从下往上定位异常时,发现了错误的原因,由于查询的数据量较大,导致程序报内存溢出,最终导致元素赋值时不允许。

    解决办法:优化查询数量的大小方法。顺利解决

  • 相关阅读:
    CentOS 6.9/7通过yum安装指定版本的Nginx
    Ubuntu 16.04安装uafred用于替代Alfred
    Alfred修改内置Terminal为iTerm
    CentOS 6.9下的iptables在本机用DNAT转发指定IP到内网IP无效的问题解决(127.0.0.1)
    Java在Service层异常封装
    Chrome无法播放m3u8格式的直播视频流的问题解决
    Caused by: java.net.UnknownHostException: localhost.localdomain: localhost.localdomain的问题解决
    macOS High Sierra 10.13正式版USB安装盘制作
    Maven打包排除某个资源或者目录
    mybatis实现变量定义,实现sql业务代码
  • 原文地址:https://www.cnblogs.com/zjdxr-up/p/9074147.html
Copyright © 2020-2023  润新知