1 Reply Latest reply on Mar 5, 2003 3:29 AM by 3004

    weird MS SQL exception

    3004
      Hi KODO gurus,

      I am testing out application (using KODO) against MS SQL server, when I
      was using the version 2.3.4 up to 2.4.0, it is totally OK. However, when
      we upgrade to 2.4.1 (and also we tried 2.4.2 too), it starts to throw
      following exceptions:

      Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
      INFO: [ C:14059746; T:14739796; D:12121717 ] get
      [com.solarmetric.datasource.PoolConnection@d688e2[[requests=0;size=0;max=0;hits=0;created=0;redundant=0;overflow=0;new=0;leaked=0;unavailable=0]]]
      from [com.solarmetric.datasource.DataSourceImpl$SortablePool[min=1;
      max=20; size=1; taken=0]]
      Mar 4, 2003 5:17:23 PM
      com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
      WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
      2000 Driver for JDBC]Database changed to cwdevdb
      Mar 4, 2003 5:17:23 PM
      com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
      WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
      2000 Driver for JDBC][SQLServer]Changed database context to 'cwdevdb'.
      Mar 4, 2003 5:17:23 PM
      com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
      WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
      2000 Driver for JDBC]Language changed to us_english
      Mar 4, 2003 5:17:23 PM
      com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
      WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
      2000 Driver for JDBC][SQLServer]Changed language setting to us_english.
      Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
      INFO: [ C:14059746; T:14739796; D:12121717 ] preparing statement
      <11294575>: SELECT DISTINCT kobject.JDOCLASSX FROM kobject
      Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
      INFO: [ C:14059746; T:14739796; D:12121717 ] executing statement
      <11294575>: [reused=1;params={}]
      Mar 4, 2003 5:17:23 PM com.solarmetric.kodo.meta.JDOMetaDataParser
      parseMetaData
      INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@99f443: parsing
      source:
      jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/AbstractMutableNode.jdo
      Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
      parseMetaData
      INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@738dcb: parsing
      source:
      jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableContextNodeBase.jdo
      Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
      parseMetaData
      INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@a8e53c: parsing
      source:
      jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableMemberNodeBase.jdo
      Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
      parseMetaData
      INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@2445d7: parsing
      source:
      jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableTreeKitemBase.jdo
      Mar 4, 2003 5:17:24 PM com.solarmetric.datasource.DataSourceImpl log
      WARNING: [ C:14059746; T:14739796; D:12121717 ] Error when closing
      Statement/ResultSet
      java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
      JDBC][SQLServer]sp_cursorclose: The cursor identifier value provided
      (abcdef0) is not valid.
           at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
           at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
           at
      com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown
      Source)
           at
      com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown
      Source)
           at
      com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown
      Source)
           at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
           at
      com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.closeCursor(Unknown
      Source)
           at
      com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.completeRowProcessing(Unknown
      Source)
           at com.microsoft.jdbc.sqlserver.SQLServerImplResultSet.close(Unknown
      Source)
           at com.microsoft.jdbc.base.BaseResultSet.close(Unknown Source)
           at
      com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown
      Source)
           at com.microsoft.jdbc.base.BaseStatement.close(Unknown Source)
           at com.microsoft.jdbc.base.BasePreparedStatement.close(Unknown Source)
           at
      com.solarmetric.datasource.StatementWrapper.close(StatementWrapper.java:201)
           at
      com.solarmetric.datasource.PreparedStatementCache$CachePreparedStatement.destroy(PreparedStatementCache.java:278)
           at
      com.solarmetric.datasource.PreparedStatementCache$CachePreparedStatement.close(PreparedStatementCache.java:350)
           at
      com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl.close(SQLExecutionManagerImpl.java:986)
           at
      com.solarmetric.kodo.impl.jdbc.ormapping.SubclassProviderImpl.getSubclasses(SubclassProviderImpl.java:278)
           at
      com.solarmetric.kodo.impl.jdbc.ormapping.ClassMapping.getPrimaryMappingFields(ClassMapping.java:1093)
           at
      com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.executeQuery(JDBCStoreManager.java:704)
           at
      com.solarmetric.kodo.impl.jdbc.runtime.JDBCExtent.getResultList(JDBCExtent.java:64)
           at
      com.solarmetric.kodo.impl.jdbc.runtime.JDBCExtent.getIterator(JDBCExtent.java:46)
           at
      com.solarmetric.kodo.runtime.ExtentImpl$TransactionAwareIterator.newIterator(ExtentImpl.java:242)
           at serp.util.MultiIterator.setIterator(MultiIterator.java:70)
           at serp.util.MultiIterator.hasNext(MultiIterator.java:25)
           at
      com.solarmetric.kodo.runtime.ExtentImpl$TransactionAwareIterator.hasNext(ExtentImpl.java:218)
           at
      com.cloverworxs.app.struts.action.ListProperties.detail(ListProperties.java:74)
           at
      com.cloverworxs.app.struts.action.AbstractModelAction.execute(AbstractModelAction.java:83)
           at
      org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:465)
           at
      org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
           at
      com.cloverworxs.app.struts.RequestProcessor.process(RequestProcessor.java:35)
           at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1422)
           at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:505)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
           at
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
           at
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
           at
      com.cloverworxs.app.web.SetCharSetFilter.doFilter(SetCharSetFilter.java:34)
           at
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
           at
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
           at
      org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
           at
      org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
           at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
           at
      org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
           at
      org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
           at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
           at
      org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
           at
      org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
           at
      org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
           at
      org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
           at
      org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
           at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
           at
      org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
           at
      org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
           at
      org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
           at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
           at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
           at
      org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
           at
      org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
           at
      org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
           at
      org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
           at java.lang.Thread.run(Thread.java:536)



      Anyone has any idea what's going on?

      Thanks!
      Tao

        • 1. Re: weird MS SQL exception
          3004
          That is just a warning and appears to go hand in hand with weird MSSQL
          drivers and our more aggressive closing of resources. You can configure
          the log4j to quiet down if you want:

          log4j.category.com.solarmetric.kodo.impl.jdbc.JDBC=ERROR, console

          Tao Yang wrote:
          Hi KODO gurus,

          I am testing out application (using KODO) against MS SQL server, when I
          was using the version 2.3.4 up to 2.4.0, it is totally OK. However, when
          we upgrade to 2.4.1 (and also we tried 2.4.2 too), it starts to throw
          following exceptions:

          Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
          INFO: [ C:14059746; T:14739796; D:12121717 ] get
          [com.solarmetric.datasource.PoolConnection@d688e2[[requests=0;size=0;max=0;hits=0;created=0;redundant=0;overflow=0;new=0;leaked=0;unavailable=0]]]
          from [com.solarmetric.datasource.DataSourceImpl$SortablePool[min=1;
          max=20; size=1; taken=0]]
          Mar 4, 2003 5:17:23 PM
          com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
          WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
          2000 Driver for JDBC]Database changed to cwdevdb
          Mar 4, 2003 5:17:23 PM
          com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
          WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
          2000 Driver for JDBC][SQLServer]Changed database context to 'cwdevdb'.
          Mar 4, 2003 5:17:23 PM
          com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
          WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
          2000 Driver for JDBC]Language changed to us_english
          Mar 4, 2003 5:17:23 PM
          com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl logWarnings
          WARNING: java.sql.SQLWarning: java.sql.SQLWarning: [Microsoft][SQLServer
          2000 Driver for JDBC][SQLServer]Changed language setting to us_english.
          Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
          INFO: [ C:14059746; T:14739796; D:12121717 ] preparing statement
          <11294575>: SELECT DISTINCT kobject.JDOCLASSX FROM kobject
          Mar 4, 2003 5:17:23 PM com.solarmetric.datasource.DataSourceImpl log
          INFO: [ C:14059746; T:14739796; D:12121717 ] executing statement
          <11294575>: [reused=1;params={}]
          Mar 4, 2003 5:17:23 PM com.solarmetric.kodo.meta.JDOMetaDataParser
          parseMetaData
          INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@99f443: parsing
          source:
          jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/AbstractMutableNode.jdo

          Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
          parseMetaData
          INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@738dcb: parsing
          source:
          jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableContextNodeBase.jdo

          Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
          parseMetaData
          INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@a8e53c: parsing
          source:
          jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableMemberNodeBase.jdo

          Mar 4, 2003 5:17:24 PM com.solarmetric.kodo.meta.JDOMetaDataParser
          parseMetaData
          INFO: com.solarmetric.kodo.meta.JDOMetaDataParser@2445d7: parsing
          source:
          jar:file:/C:/cvs-1.11.5/apps/apps-war/WEB-INF/lib/ke-kodo.jar!/com/cloverworxs/impl/base/ke/view/tree/MutableTreeKitemBase.jdo

          Mar 4, 2003 5:17:24 PM com.solarmetric.datasource.DataSourceImpl log
          WARNING: [ C:14059746; T:14739796; D:12121717 ] Error when closing
          Statement/ResultSet
          java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
          JDBC][SQLServer]sp_cursorclose: The cursor identifier value provided
          (abcdef0) is not valid.
          at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown
          Source)
          at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
          at
          com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown
          Source)
          at
          com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown
          Source)
          at
          com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown
          Source)
          at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown
          Source)
          at
          com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.closeCursor(Unknown
          Source)
          at
          com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.completeRowProcessing(Unknown
          Source)
          at com.microsoft.jdbc.sqlserver.SQLServerImplResultSet.close(Unknown
          Source)
          at com.microsoft.jdbc.base.BaseResultSet.close(Unknown Source)
          at
          com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown
          Source)
          at com.microsoft.jdbc.base.BaseStatement.close(Unknown Source)
          at com.microsoft.jdbc.base.BasePreparedStatement.close(Unknown Source)
          at
          com.solarmetric.datasource.StatementWrapper.close(StatementWrapper.java:201)

          at
          com.solarmetric.datasource.PreparedStatementCache$CachePreparedStatement.destroy(PreparedStatementCache.java:278)

          at
          com.solarmetric.datasource.PreparedStatementCache$CachePreparedStatement.close(PreparedStatementCache.java:350)

          at
          com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl.close(SQLExecutionManagerImpl.java:986)

          at
          com.solarmetric.kodo.impl.jdbc.ormapping.SubclassProviderImpl.getSubclasses(SubclassProviderImpl.java:278)

          at
          com.solarmetric.kodo.impl.jdbc.ormapping.ClassMapping.getPrimaryMappingFields(ClassMapping.java:1093)

          at
          com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.executeQuery(JDBCStoreManager.java:704)

          at
          com.solarmetric.kodo.impl.jdbc.runtime.JDBCExtent.getResultList(JDBCExtent.java:64)

          at
          com.solarmetric.kodo.impl.jdbc.runtime.JDBCExtent.getIterator(JDBCExtent.java:46)

          at
          com.solarmetric.kodo.runtime.ExtentImpl$TransactionAwareIterator.newIterator(ExtentImpl.java:242)

          at serp.util.MultiIterator.setIterator(MultiIterator.java:70)
          at serp.util.MultiIterator.hasNext(MultiIterator.java:25)
          at
          com.solarmetric.kodo.runtime.ExtentImpl$TransactionAwareIterator.hasNext(ExtentImpl.java:218)

          at
          com.cloverworxs.app.struts.action.ListProperties.detail(ListProperties.java:74)

          at
          com.cloverworxs.app.struts.action.AbstractModelAction.execute(AbstractModelAction.java:83)

          at
          org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:465)

          at
          org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)

          at
          com.cloverworxs.app.struts.RequestProcessor.process(RequestProcessor.java:35)

          at
          org.apache.struts.action.ActionServlet.process(ActionServlet.java:1422)
          at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:505)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
          at
          org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)

          at
          org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

          at
          com.cloverworxs.app.web.SetCharSetFilter.doFilter(SetCharSetFilter.java:34)
          at
          org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)

          at
          org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

          at
          org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

          at
          org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
          at
          org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
          at
          org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

          at
          org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
          at
          org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
          at
          org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
          at
          org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

          at
          org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

          at
          org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

          at
          org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
          at
          org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
          at
          org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)

          at
          org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

          at
          org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
          at
          org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
          at
          org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
          at
          org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
          at
          org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)

          at
          org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
          at
          org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)

          at java.lang.Thread.run(Thread.java:536)



          Anyone has any idea what's going on?

          Thanks!
          Tao
          --
          Stephen Kim
          skim@solarmetric.com
          SolarMetric, Inc.
          http://www.solarmetric.com