You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Rony M Sunny (JIRA)" <ji...@apache.org> on 2010/06/07 15:53:47 UTC

[jira] Created: (DBCP-336) Incorect data from data base if connection pool size is minimum (say 1 to 3 )

Incorect data from data base if connection pool size is minimum (say 1 to 3 )
-----------------------------------------------------------------------------

                 Key: DBCP-336
                 URL: https://issues.apache.org/jira/browse/DBCP-336
             Project: Commons Dbcp
          Issue Type: Bug
    Affects Versions: 1.4
         Environment:  java on linux and sql server 2005  db on windows 
            Reporter: Rony M Sunny



   Environment:
   I have a sp which return data from data base according to a criteria and i put a sleep of 700 millisecond on sp . 
   The connection pool configuration is very minimum compared to data accessing thread, then from multiple java thread i tried to access data for a time period of 30- 60 minute, also i put a query execution time out of 1 second, 

    The result is that
       Some thread have not get any data from db as there is not much available connection to db in pool and can see it from the exception log , it is OK.
     But the problem  is that after some period time (take 30 - 60 min)  data retrieved by  threads are incorrect, means data retrieved is, query result of some other thread.
     
My connection pool configuration is here
-----------------------------------------------------------
  <property name="maxIdle" value="3" description=""/>
                    <property name="poolInitialSize" value="1" description=""/>
                    <property name="testOnBorrow" value="true" description=""/>
                    <property name="maxStmts" value="10" description=""/>
                    <property name="validationQuery" value="SELECT 1" description=""/>
                    <property name="password" value="*****" description=""/>
                    <property name="url" value="jdbc:microsoft:sqlserver://192.168.29.222:1433;           DatabaseName=marketsummary" description=""/>
                    <property name="testOnReturn" value="true" description=""/>
                    <property name="maxActive" value="3" description=""/>
                    <property name="userId" value="***" description=""/>
                    <property name="minIdle" value="3" description="String"/>
                    <property name="maxWait" value="1000" description=""/>
                    <property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" description=""/>

----------------------------------------------------------

Please look in to this
   

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (DBCP-336) Incorect data from data base if connection pool size is minimum (say 1 to 3 )

Posted by "Mark Thomas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DBCP-336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mark Thomas resolved DBCP-336.
------------------------------

    Resolution: Invalid

You appear to have a threading issue in your application. This is not the correct place to get help. Please use the users mailing list.

> Incorect data from data base if connection pool size is minimum (say 1 to 3 )
> -----------------------------------------------------------------------------
>
>                 Key: DBCP-336
>                 URL: https://issues.apache.org/jira/browse/DBCP-336
>             Project: Commons Dbcp
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment:  java on linux and sql server 2005  db on windows 
>            Reporter: Rony M Sunny
>         Attachments: dbcpconnectionpooltest.zip
>
>
>    Environment:
>    I have a sp which return data from data base according to a criteria and i put a sleep of 700 millisecond on sp . 
>    The connection pool configuration is very minimum compared to data accessing thread, then from multiple java thread i tried to access data for a time period of 30- 60 minute, also i put a query execution time out of 1 second, 
>     The result is that
>        Some thread have not get any data from db as there is not much available connection to db in pool and can see it from the exception log , it is OK.
>      But the problem  is that after some period time (take 30 - 60 min)  data retrieved by  threads are incorrect, means data retrieved is, query result of some other thread.
>      
> My connection pool configuration is here
> -----------------------------------------------------------
>   <property name="maxIdle" value="3" description=""/>
>                     <property name="poolInitialSize" value="1" description=""/>
>                     <property name="testOnBorrow" value="true" description=""/>
>                     <property name="maxStmts" value="10" description=""/>
>                     <property name="validationQuery" value="SELECT 1" description=""/>
>                     <property name="password" value="*****" description=""/>
>                     <property name="url" value="jdbc:microsoft:sqlserver://192.168.29.222:1433;           DatabaseName=marketsummary" description=""/>
>                     <property name="testOnReturn" value="true" description=""/>
>                     <property name="maxActive" value="3" description=""/>
>                     <property name="userId" value="***" description=""/>
>                     <property name="minIdle" value="3" description="String"/>
>                     <property name="maxWait" value="1000" description=""/>
>                     <property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" description=""/>
> ----------------------------------------------------------
> Please look in to this
>    

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (DBCP-336) Incorect data from data base if connection pool size is minimum (say 1 to 3 )

Posted by "Rony M Sunny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DBCP-336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rony M Sunny updated DBCP-336:
------------------------------

    Attachment: SQLException.log

Dear Mark

   I am very sorry to come with this issue and waisting your time,

   The issue is due to the jdbc driver which i am using 
"com.microsoft.jdbc.sqlserver.SQLServerDriver" now i migrate to new  
driver    "com.microsoft.sqlserver.jdbc.SQLServerDriver"  and issue was 
solved.
  
    With old driver an exception
    - java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for 
JDBC]The operation was cancelled at the user's request. -
     occurs and after that incorrect data is getting from DB. I am 
attaching that log with this mail.

      Thanks very much for your support and again sorry for the 
inconvenience from my side.

 Regards
 Rony M Sunny

  






2010-06-09 14:36:06,149 DEBUG DBTest:59 - Got correct result  requessted scrip [26] reply [[26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26]] 
2010-06-09 14:36:06,149 DEBUG DBTest:59 - Got correct result  requessted scrip [23] reply [[23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23]] 
2010-06-09 14:36:06,164 DEBUG DBTest:59 - Got correct result  requessted scrip [27] reply [[27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27]] 
2010-06-09 14:36:06,164 DEBUG DBTest:59 - Got correct result  requessted scrip [22] reply [[22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22]] 
2010-06-09 14:36:06,180 ERROR ConnectionPool:147 - [12] Error in request data 
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]The operation was cancelled at the user's request.
        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.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.SQLServerImplStatement.getNextResultType(Unknown Source)
        at com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
        at com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)
        at com.microsoft.jdbc.base.BasePreparedStatement.postImplExecute(Unknown Source)
        at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
        at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
        at com.microsoft.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at com.git.dbcp.ConnectionPool.requestData(ConnectionPool.java:141)
        at com.git.dbcp.DBTest$1.run(DBTest.java:51)
        at java.lang.Thread.run(Thread.java:619)
2010-06-09 14:36:06,211 WARN  DBTest:57 - [13] ******** Got in correct data from pool  requessted scrip [24] reply [[28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28]] 
2010-06-09 14:36:06,211 DEBUG DBTest:59 - Got correct result  requessted scrip [29] reply [[29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29]] 
2010-06-09 14:36:06,211 DEBUG DBTest:59 - Got correct result  requessted scrip [25] reply [[25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25]] 
2010-06-09 14:36:06,211 WARN  DBTest:57 - [14] ******** Got in correct data from pool  requessted scrip [30] reply [[24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24]] 
2010-06-09 14:36:06,274 WARN  DBTest:57 - [23] ******** Got in correct data from pool  requessted scrip [24] reply [[25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25]] 


> Incorect data from data base if connection pool size is minimum (say 1 to 3 )
> -----------------------------------------------------------------------------
>
>                 Key: DBCP-336
>                 URL: https://issues.apache.org/jira/browse/DBCP-336
>             Project: Commons Dbcp
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment:  java on linux and sql server 2005  db on windows 
>            Reporter: Rony M Sunny
>         Attachments: dbcpconnectionpooltest.zip, SQLException.log
>
>
>    Environment:
>    I have a sp which return data from data base according to a criteria and i put a sleep of 700 millisecond on sp . 
>    The connection pool configuration is very minimum compared to data accessing thread, then from multiple java thread i tried to access data for a time period of 30- 60 minute, also i put a query execution time out of 1 second, 
>     The result is that
>        Some thread have not get any data from db as there is not much available connection to db in pool and can see it from the exception log , it is OK.
>      But the problem  is that after some period time (take 30 - 60 min)  data retrieved by  threads are incorrect, means data retrieved is, query result of some other thread.
>      
> My connection pool configuration is here
> -----------------------------------------------------------
>   <property name="maxIdle" value="3" description=""/>
>                     <property name="poolInitialSize" value="1" description=""/>
>                     <property name="testOnBorrow" value="true" description=""/>
>                     <property name="maxStmts" value="10" description=""/>
>                     <property name="validationQuery" value="SELECT 1" description=""/>
>                     <property name="password" value="*****" description=""/>
>                     <property name="url" value="jdbc:microsoft:sqlserver://192.168.29.222:1433;           DatabaseName=marketsummary" description=""/>
>                     <property name="testOnReturn" value="true" description=""/>
>                     <property name="maxActive" value="3" description=""/>
>                     <property name="userId" value="***" description=""/>
>                     <property name="minIdle" value="3" description="String"/>
>                     <property name="maxWait" value="1000" description=""/>
>                     <property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" description=""/>
> ----------------------------------------------------------
> Please look in to this
>    

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (DBCP-336) Incorect data from data base if connection pool size is minimum (say 1 to 3 )

Posted by "Rony M Sunny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DBCP-336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rony M Sunny updated DBCP-336:
------------------------------

    Attachment: dbcpconnectionpooltest.zip

I am attaching a sample code which reproduce above mentioned bug (Incorrect data from DBCP connection pool)



> Incorect data from data base if connection pool size is minimum (say 1 to 3 )
> -----------------------------------------------------------------------------
>
>                 Key: DBCP-336
>                 URL: https://issues.apache.org/jira/browse/DBCP-336
>             Project: Commons Dbcp
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment:  java on linux and sql server 2005  db on windows 
>            Reporter: Rony M Sunny
>         Attachments: dbcpconnectionpooltest.zip
>
>
>    Environment:
>    I have a sp which return data from data base according to a criteria and i put a sleep of 700 millisecond on sp . 
>    The connection pool configuration is very minimum compared to data accessing thread, then from multiple java thread i tried to access data for a time period of 30- 60 minute, also i put a query execution time out of 1 second, 
>     The result is that
>        Some thread have not get any data from db as there is not much available connection to db in pool and can see it from the exception log , it is OK.
>      But the problem  is that after some period time (take 30 - 60 min)  data retrieved by  threads are incorrect, means data retrieved is, query result of some other thread.
>      
> My connection pool configuration is here
> -----------------------------------------------------------
>   <property name="maxIdle" value="3" description=""/>
>                     <property name="poolInitialSize" value="1" description=""/>
>                     <property name="testOnBorrow" value="true" description=""/>
>                     <property name="maxStmts" value="10" description=""/>
>                     <property name="validationQuery" value="SELECT 1" description=""/>
>                     <property name="password" value="*****" description=""/>
>                     <property name="url" value="jdbc:microsoft:sqlserver://192.168.29.222:1433;           DatabaseName=marketsummary" description=""/>
>                     <property name="testOnReturn" value="true" description=""/>
>                     <property name="maxActive" value="3" description=""/>
>                     <property name="userId" value="***" description=""/>
>                     <property name="minIdle" value="3" description="String"/>
>                     <property name="maxWait" value="1000" description=""/>
>                     <property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" description=""/>
> ----------------------------------------------------------
> Please look in to this
>    

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (DBCP-336) Incorect data from data base if connection pool size is minimum (say 1 to 3 )

Posted by "Phil Steitz (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DBCP-336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Phil Steitz closed DBCP-336.
----------------------------


> Incorect data from data base if connection pool size is minimum (say 1 to 3 )
> -----------------------------------------------------------------------------
>
>                 Key: DBCP-336
>                 URL: https://issues.apache.org/jira/browse/DBCP-336
>             Project: Commons Dbcp
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment:  java on linux and sql server 2005  db on windows 
>            Reporter: Rony M Sunny
>         Attachments: dbcpconnectionpooltest.zip, SQLException.log
>
>
>    Environment:
>    I have a sp which return data from data base according to a criteria and i put a sleep of 700 millisecond on sp . 
>    The connection pool configuration is very minimum compared to data accessing thread, then from multiple java thread i tried to access data for a time period of 30- 60 minute, also i put a query execution time out of 1 second, 
>     The result is that
>        Some thread have not get any data from db as there is not much available connection to db in pool and can see it from the exception log , it is OK.
>      But the problem  is that after some period time (take 30 - 60 min)  data retrieved by  threads are incorrect, means data retrieved is, query result of some other thread.
>      
> My connection pool configuration is here
> -----------------------------------------------------------
>   <property name="maxIdle" value="3" description=""/>
>                     <property name="poolInitialSize" value="1" description=""/>
>                     <property name="testOnBorrow" value="true" description=""/>
>                     <property name="maxStmts" value="10" description=""/>
>                     <property name="validationQuery" value="SELECT 1" description=""/>
>                     <property name="password" value="*****" description=""/>
>                     <property name="url" value="jdbc:microsoft:sqlserver://192.168.29.222:1433;           DatabaseName=marketsummary" description=""/>
>                     <property name="testOnReturn" value="true" description=""/>
>                     <property name="maxActive" value="3" description=""/>
>                     <property name="userId" value="***" description=""/>
>                     <property name="minIdle" value="3" description="String"/>
>                     <property name="maxWait" value="1000" description=""/>
>                     <property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" description=""/>
> ----------------------------------------------------------
> Please look in to this
>    

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.