CMDBuild Forum

Class access error.

Hi!

When I access one of the classes (Class called "Usuario") in my CMDBuild , I am having a very rare error. Sometimes it works correctly, but 70% of the times I access it, it gives me the following error:

Call: services/json/management/modcard/getcard
-----------------------------------------------
Error: org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [ 

SELECT
“USUARIO#DELEGACION”.“Description” AS “USUARIO#DELEGACION#Description”, “USUARIO#PUESTO”.“Description” AS “USUARIO#PUESTO#Description”, “USUARIO”.“Code” AS “USUARIO#Code”, “USUARIO”.“Description” AS “USUARIO#Description”, “USUARIO”.“Notes” AS “USUARIO#Notes”, “USUARIO”.“NOMBRE” AS “USUARIO#NOMBRE”, “USUARIO”.“APELLIDOS” AS “USUARIO#APELLIDOS”, “USUARIO”.“EMAIL” AS “USUARIO#EMAIL”, “USUARIO”.“DELEGACION” AS “USUARIO#DELEGACION”, “USUARIO”.“PUESTO” AS “USUARIO#PUESTO”, “USUARIO”.“EXTENSION” AS “USUARIO#EXTENSION”, “USUARIO”.“MOVIL” AS “USUARIO#MOVIL”, “USUARIO”.“COMENTARIOS” AS “USUARIO#COMENTARIOS”, “USUARIO”.“IdClass”::oid AS “_USUARIO_IdClass”, “USUARIO”.“Id” AS “_USUARIO_Id”, “USUARIO”.“User” AS “_USUARIO_User”, “USUARIO”.“BeginDate” AS “_USUARIO_BeginDate”
FROM “USUARIO” AS “USUARIO”
LEFT JOIN “PUESTO” AS “USUARIO#PUESTO” ON “USUARIO#PUESTO”.“Id” = “USUARIO”.“PUESTO” AND “USUARIO#PUESTO”.“Status” = ‘A’
LEFT JOIN “DELEGACION” AS “USUARIO#DELEGACION” ON “USUARIO#DELEGACION”.“Id” = “USUARIO”.“DELEGACION” AND “USUARIO#DELEGACION”.“Status” = ‘A’
WHERE “USUARIO”.“Id” = ? AND “USUARIO”.“Status” = ?
LIMIT 1
OFFSET 0]; SQL state [0A000]; error code [0]; ERROR: el plan almacenado no debe cambiar el tipo de resultado; nested exception is org.postgresql.util.PSQLException: ERROR: el plan almacenado no debe cambiar el tipo de resultado
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:737)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:747)
at org.cmdbuild.dao.driver.postgres.EntryQueryCommand.run(EntryQueryCommand.java:72)
at org.cmdbuild.dao.driver.postgres.PostgresDriver.query(PostgresDriver.java:194)
at org.cmdbuild.dao.view.DBDataView.executeQuery(DBDataView.java:416)
at org.cmdbuild.dao.view.ForwardingDataView.executeQuery(ForwardingDataView.java:160)
at org.cmdbuild.services.localization.LocalizedDataView.executeQuery(LocalizedDataView.java:208)
at org.cmdbuild.dao.view.ForwardingDataView.executeQuery(ForwardingDataView.java:160)
at org.cmdbuild.dao.view.user.UserDataView.executeQuery(UserDataView.java:181)
at org.cmdbuild.dao.view.user.UserQuerySpecsBuilder.run(UserQuerySpecsBuilder.java:149)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCMCard(DefaultDataAccessLogic.java:411)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCMCard(DefaultDataAccessLogic.java:401)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCard(DefaultDataAccessLogic.java:392)
at org.cmdbuild.servlets.json.management.ModCard.getCard(ModCard.java:586)
at sun.reflect.GeneratedMethodAccessor141.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.cmdbuild.servlets.JSONDispatcher.dispatch(JSONDispatcher.java:104)
at org.cmdbuild.servlets.JSONDispatcher.doPost(JSONDispatcher.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.AuthFilter.doFilter(AuthFilter.java:188)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.PatchManagerFilter.doFilter(PatchManagerFilter.java:48)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.ConfCheckFilter.doFilter(ConfCheckFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.TranslationFilter.doFilter(TranslationFilter.java:52)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.LocalizationFilter.doFilter(LocalizationFilter.java:127)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.postgresql.util.PSQLException: ERROR: el plan almacenado no debe cambiar el tipo de resultado
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2182)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1911)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:173)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:622)
at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:472)
at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:386)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:688)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629)
… 66 more

Can someone help me?.
THANKS!
Dear Jose,
 
it should be a known issue located in the JDBC driver that we've verified after we've changed the scale/precision of decimal attribute types. If you reboot the application it should not happen again.
 
Best regards.
 
-- CMDBuild Team
 
Previously Jose wrote:

Hi!

When I access one of the classes (Class called "Usuario") in my CMDBuild , I am having a very rare error. Sometimes it works correctly, but 70% of the times I access it, it gives me the following error:

Call: services/json/management/modcard/getcard
-----------------------------------------------
Error: org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [ 

SELECT
“USUARIO#DELEGACION”.“Description” AS “USUARIO#DELEGACION#Description”, “USUARIO#PUESTO”.“Description” AS “USUARIO#PUESTO#Description”, “USUARIO”.“Code” AS “USUARIO#Code”, “USUARIO”.“Description” AS “USUARIO#Description”, “USUARIO”.“Notes” AS “USUARIO#Notes”, “USUARIO”.“NOMBRE” AS “USUARIO#NOMBRE”, “USUARIO”.“APELLIDOS” AS “USUARIO#APELLIDOS”, “USUARIO”.“EMAIL” AS “USUARIO#EMAIL”, “USUARIO”.“DELEGACION” AS “USUARIO#DELEGACION”, “USUARIO”.“PUESTO” AS “USUARIO#PUESTO”, “USUARIO”.“EXTENSION” AS “USUARIO#EXTENSION”, “USUARIO”.“MOVIL” AS “USUARIO#MOVIL”, “USUARIO”.“COMENTARIOS” AS “USUARIO#COMENTARIOS”, “USUARIO”.“IdClass”::oid AS “_USUARIO_IdClass”, “USUARIO”.“Id” AS “_USUARIO_Id”, “USUARIO”.“User” AS “_USUARIO_User”, “USUARIO”.“BeginDate” AS “_USUARIO_BeginDate”
FROM “USUARIO” AS “USUARIO”
LEFT JOIN “PUESTO” AS “USUARIO#PUESTO” ON “USUARIO#PUESTO”.“Id” = “USUARIO”.“PUESTO” AND “USUARIO#PUESTO”.“Status” = ‘A’
LEFT JOIN “DELEGACION” AS “USUARIO#DELEGACION” ON “USUARIO#DELEGACION”.“Id” = “USUARIO”.“DELEGACION” AND “USUARIO#DELEGACION”.“Status” = ‘A’
WHERE “USUARIO”.“Id” = ? AND “USUARIO”.“Status” = ?
LIMIT 1
OFFSET 0]; SQL state [0A000]; error code [0]; ERROR: el plan almacenado no debe cambiar el tipo de resultado; nested exception is org.postgresql.util.PSQLException: ERROR: el plan almacenado no debe cambiar el tipo de resultado
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:737)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:747)
at org.cmdbuild.dao.driver.postgres.EntryQueryCommand.run(EntryQueryCommand.java:72)
at org.cmdbuild.dao.driver.postgres.PostgresDriver.query(PostgresDriver.java:194)
at org.cmdbuild.dao.view.DBDataView.executeQuery(DBDataView.java:416)
at org.cmdbuild.dao.view.ForwardingDataView.executeQuery(ForwardingDataView.java:160)
at org.cmdbuild.services.localization.LocalizedDataView.executeQuery(LocalizedDataView.java:208)
at org.cmdbuild.dao.view.ForwardingDataView.executeQuery(ForwardingDataView.java:160)
at org.cmdbuild.dao.view.user.UserDataView.executeQuery(UserDataView.java:181)
at org.cmdbuild.dao.view.user.UserQuerySpecsBuilder.run(UserQuerySpecsBuilder.java:149)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCMCard(DefaultDataAccessLogic.java:411)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCMCard(DefaultDataAccessLogic.java:401)
at org.cmdbuild.logic.data.access.DefaultDataAccessLogic.fetchCard(DefaultDataAccessLogic.java:392)
at org.cmdbuild.servlets.json.management.ModCard.getCard(ModCard.java:586)
at sun.reflect.GeneratedMethodAccessor141.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.cmdbuild.servlets.JSONDispatcher.dispatch(JSONDispatcher.java:104)
at org.cmdbuild.servlets.JSONDispatcher.doPost(JSONDispatcher.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.AuthFilter.doFilter(AuthFilter.java:188)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.PatchManagerFilter.doFilter(PatchManagerFilter.java:48)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.ConfCheckFilter.doFilter(ConfCheckFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.TranslationFilter.doFilter(TranslationFilter.java:52)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.cmdbuild.filters.LocalizationFilter.doFilter(LocalizationFilter.java:127)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.postgresql.util.PSQLException: ERROR: el plan almacenado no debe cambiar el tipo de resultado
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2182)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1911)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:173)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:622)
at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:472)
at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:386)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:688)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629)
… 66 more

Can someone help me?.
THANKS!