Failure to run Analyze Statistics exception

Document ID : KB000048468
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

The following exception is seen in the DA karaf.log.....


ERROR | tory-thread-8460 | 2013-10-28 22:04:37,196 | StatisticalAnalysisDAOImpl | .impl.StatisticalAnalysisDAOImpl  200 | r.core.database.dao.impl | 
     | Exception performing analysis of all objects
org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [SELECT ANALYZE_HISTOGRAM('',5)]; nested exception is java.sql.SQLException: [Vertica][VJDBC](4570) ERROR: Relation with OID 45035996312153156 does not exist
               at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:98)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:406)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:455)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:463)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:471)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:476)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.queryForInt(JdbcTemplate.java:485)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at com.ca.im.dm.core.database.dao.impl.StatisticalAnalysisDAOImpl.performAnalysisOfAllObjects(StatisticalAnalysisDAOImpl.java:196)
               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_09]
               at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_09]
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_09]
               at java.lang.reflect.Method.invoke(Method.java:601)[:1.7.0_09]
               at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58)[101:org.springframework.osgi.core:1.2.1]
               at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62)[101:org.springframework.osgi.core:1.2.1]
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56)[101:org.springframework.osgi.core:1.2.1]
               at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39)[101:org.springframework.osgi.core:1.2.1]
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59)[101:org.springframework.osgi.core:1.2.1]
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[97:org.springframework.aop:3.0.7.RELEASE]
               at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)[97:org.springframework.aop:3.0.7.RELEASE]
               at $Proxy235.performAnalysisOfAllObjects(Unknown Source)[:]
               at com.ca.im.dm.core.aggregator.datarepository.impl.DataRepositoryMaintenanceTaskProcessorImpl.performAnalysisOfAllObjects(DataRepositoryMaintenanceTaskProcessorImpl.java:310)[235:com.ca.im.data-manager.core.aggregator.impl:2.3.1.RELEASE-71]
               at com.ca.im.dm.core.aggregator.datarepository.impl.DataRepositoryMaintenanceTaskProcessorImpl.processTask(DataRepositoryMaintenanceTaskProcessorImpl.java:120)[235:com.ca.im.data-manager.core.aggregator.impl:2.3.1.RELEASE-71]
               at com.ca.im.dm.core.aggregator.datarepository.impl.ScheduledDataRepositoryMaintenanceTaskListener.attributeChanged(ScheduledDataRepositoryMaintenanceTaskListener.java:84)[235:com.ca.im.data-manager.core.aggregator.impl:2.3.1.RELEASE-71]
               at com.ca.im.item.impl.repository.AttributeChangeNotificationTask.notifyListener(AttributeChangeNotificationTask.java:165)[197:com.ca.im.item-repository.impl:2.3.1.RELEASE-71]
               at com.ca.im.item.impl.repository.AttributeChangeNotificationTask.run(AttributeChangeNotificationTask.java:120)[197:com.ca.im.item-repository.impl:2.3.1.RELEASE-71]
               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)[:1.7.0_09]
               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)[:1.7.0_09]
               at java.lang.Thread.run(Thread.java:722)[:1.7.0_09]
Caused by: java.sql.SQLException: [Vertica][VJDBC](4570) ERROR: Relation with OID 45035996312153156 does not exist
               at com.vertica.util.ServerErrorData.buildException(Unknown Source)
               at com.vertica.dataengine.VResultSet.fetchChunk(Unknown Source)
               at com.vertica.dataengine.VResultSet.initialize(Unknown Source)
               at com.vertica.dataengine.VQueryExecutor.readExecuteResponse(Unknown Source)
               at com.vertica.dataengine.VQueryExecutor.handleExecuteResponse(Unknown Source)
               at com.vertica.dataengine.VQueryExecutor.execute(Unknown Source)
               at com.vertica.jdbc.SStatement.executeNoParams(Unknown Source)
               at com.vertica.jdbc.SStatement.executeQuery(Unknown Source)
               at org.springframework.jdbc.core.JdbcTemplate$1QueryStatementCallback.doInStatement(JdbcTemplate.java:440)[119:org.springframework.jdbc:3.0.7.RELEASE]
               at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:395)[119:org.springframework.jdbc:3.0.7.RELEASE]
               ... 35 more

Solution:

This is a benign issue in 2.3.1 and can happen if we start analyzing a table that was already deleted. This error can be safely ignored.