Re: problems with dbcp
Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter parameter namemaxWait/name value1/value /parameter parameter nameusername/name valueblah/value /parameter parameter namepassword/name valueblah/value /parameter parameter namedriverClassName/name valueoracle.jdbc.driver.OracleDriver/value /parameter parameter nameurl/name valuejdbc:oracle:thin:@000.000.000:blah/value /parameter parameter namevalidationQuery/name valueselect sysdate from dual/value /parameter parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value60/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams As i wrote above, DBCP should revover all connection objects and close automatic everything, but is not. Any idea? Regards, Edson - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: problems with dbcp
But removeAbandoned and removeAbandonedTimeout doesn´t close all ResultSet, Statement and Connections even if they are forsaken? -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder:Tomcat Users List Enviada: segunda-feira, 3 de novembro de 2003 9:51 Para: Tomcat Users List Assunto: Re: problems with dbcp Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter parameter namemaxWait/name value1/value /parameter parameter nameusername/name valueblah/value /parameter parameter namepassword/name valueblah/value /parameter parameter namedriverClassName/name valueoracle.jdbc.driver.OracleDriver/value /parameter parameter nameurl/name valuejdbc:oracle:thin:@000.000.000:blah/value /parameter parameter namevalidationQuery/name valueselect sysdate from dual/value /parameter parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value60/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams As i wrote above, DBCP should revover all connection objects and close automatic everything, but is not. Any idea? Regards, Edson - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: problems with dbcp
Ok. That's the same point I am currently trying to solve. I intentionally leave connections open, but they don't get freed. Perhaps someone else could comment here? -Florian my settings in server.xml--- Resource name=jdbc/TomcatDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/TomcatDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter !-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. -- parameter namemaxActive/name value20/value /parameter !-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit. -- parameter namemaxIdle/name value5/value /parameter !-- Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -- parameter namemaxWait/name value1/value /parameter parameter nameusername/name valuecaspar/value /parameter parameter namepassword/name valuegeheim/value /parameter parameter namedriverClassName/name valuecom.mysql.jdbc.Driver/value /parameter !-- The JDBC connection url for connecting to your MySQL dB. The autoReconnect=true argument to the url makes sure that the mm.mysql JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours. -- parameter nameurl/name valuejdbc:mysql://localhost:3306/tomcatds?autoReconnect=true/value /parameter !-- Umgang mit nicht geschlossenen Statements, Connections und ResultSets. -- parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value10/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams Edson Alves Pereira wrote: But removeAbandoned and removeAbandonedTimeout doesn´t close all ResultSet, Statement and Connections even if they are forsaken? -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder: Tomcat Users List Enviada:segunda-feira, 3 de novembro de 2003 9:51 Para: Tomcat Users List Assunto:Re: problems with dbcp Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter parameter namemaxWait/name value1/value /parameter parameter nameusername/name valueblah/value /parameter parameter namepassword/name valueblah/value /parameter parameter namedriverClassName/name valueoracle.jdbc.driver.OracleDriver/value /parameter parameter nameurl/name valuejdbc:oracle:thin:@000.000.000:blah/value /parameter parameter namevalidationQuery/name valueselect sysdate from dual/value /parameter parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value60/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams As i wrote above, DBCP should revover all connection objects and close automatic everything, but is not. Any idea
RE: problems with dbcp
Hi, Why dont you override the finialize method so that when your objects fall out of scope and are garbage collected then you close the connections ? Thanks Pete -Original Message- From: Florian Ebeling [mailto:[EMAIL PROTECTED] Sent: 03 November 2003 13:27 To: Tomcat Users List Subject: Re: problems with dbcp Ok. That's the same point I am currently trying to solve. I intentionally leave connections open, but they don't get freed. Perhaps someone else could comment here? -Florian my settings in server.xml--- Resource name=jdbc/TomcatDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/TomcatDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter !-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. -- parameter namemaxActive/name value20/value /parameter !-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit. -- parameter namemaxIdle/name value5/value /parameter !-- Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -- parameter namemaxWait/name value1/value /parameter parameter nameusername/name valuecaspar/value /parameter parameter namepassword/name valuegeheim/value /parameter parameter namedriverClassName/name valuecom.mysql.jdbc.Driver/value /parameter !-- The JDBC connection url for connecting to your MySQL dB. The autoReconnect=true argument to the url makes sure that the mm.mysql JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours. -- parameter nameurl/name valuejdbc:mysql://localhost:3306/tomcatds?autoReconnect=true/value /parameter !-- Umgang mit nicht geschlossenen Statements, Connections und ResultSets. -- parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value10/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams Edson Alves Pereira wrote: But removeAbandoned and removeAbandonedTimeout doesn´t close all ResultSet, Statement and Connections even if they are forsaken? -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder:Tomcat Users List Enviada: segunda-feira, 3 de novembro de 2003 9:51 Para: Tomcat Users List Assunto: Re: problems with dbcp Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter parameter namemaxWait/name value1/value /parameter parameter nameusername/name valueblah/value /parameter parameter namepassword/name valueblah/value /parameter parameter namedriverClassName/name valueoracle.jdbc.driver.OracleDriver/value /parameter parameter nameurl/name valuejdbc:oracle:thin:@000.000.000:blah/value /parameter parameter namevalidationQuery/name valueselect sysdate from dual/value /parameter parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value60/value /parameter parameter
Re: problems with dbcp
one cannot count on the finalizer to do this job. DB connections eat up resources (memory, client licenses), and you never know when they get reclaimed by the finalizer (if at all). So setting a timeout for each connection is definitly a good idea, I guess. -Florian Peter Guyatt wrote: Hi, Why dont you override the finialize method so that when your objects fall out of scope and are garbage collected then you close the connections ? Thanks Pete -Original Message- From: Florian Ebeling [mailto:[EMAIL PROTECTED] Sent: 03 November 2003 13:27 To: Tomcat Users List Subject: Re: problems with dbcp Ok. That's the same point I am currently trying to solve. I intentionally leave connections open, but they don't get freed. Perhaps someone else could comment here? -Florian my settings in server.xml--- Resource name=jdbc/TomcatDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/TomcatDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter !-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. -- parameter namemaxActive/name value20/value /parameter !-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit. -- parameter namemaxIdle/name value5/value /parameter !-- Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -- parameter namemaxWait/name value1/value /parameter parameter nameusername/name valuecaspar/value /parameter parameter namepassword/name valuegeheim/value /parameter parameter namedriverClassName/name valuecom.mysql.jdbc.Driver/value /parameter !-- The JDBC connection url for connecting to your MySQL dB. The autoReconnect=true argument to the url makes sure that the mm.mysql JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours. -- parameter nameurl/name valuejdbc:mysql://localhost:3306/tomcatds?autoReconnect=true/value /parameter !-- Umgang mit nicht geschlossenen Statements, Connections und ResultSets. -- parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value10/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams Edson Alves Pereira wrote: But removeAbandoned and removeAbandonedTimeout doesn´t close all ResultSet, Statement and Connections even if they are forsaken? -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder: Tomcat Users List Enviada:segunda-feira, 3 de novembro de 2003 9:51 Para: Tomcat Users List Assunto:Re: problems with dbcp Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter parameter namemaxWait/name value1/value /parameter parameter nameusername/name valueblah/value /parameter parameter namepassword/name valueblah/value /parameter parameter namedriverClassName/name valueoracle.jdbc.driver.OracleDriver/value /parameter parameter nameurl/name
Re: problems with dbcp
Hi, Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted Edson, which Tomcat versions do you use? I was puzzled why the example would not work and moved from my 4.1.24 to the most recent one, 4.1.29. Now it works without any further changes. I for one found it helpful to use my old configuration and custom app files by specifying CATALINA_BASE as to point to the old tomcat installation dir. -Florian - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: problems with dbcp
That´s true, but i thought that DBCP would close everything for me! I can do that. The point here is, DBCP configuration tells: i´ll close all resources for you and it´s not! -- De: Peter Guyatt[SMTP:[EMAIL PROTECTED] Responder:Tomcat Users List Enviada: segunda-feira, 3 de novembro de 2003 10:30 Para: Tomcat Users List; [EMAIL PROTECTED] Assunto: RE: problems with dbcp Hi, Why dont you override the finialize method so that when your objects fall out of scope and are garbage collected then you close the connections ? Thanks Pete -Original Message- From: Florian Ebeling [mailto:[EMAIL PROTECTED] Sent: 03 November 2003 13:27 To: Tomcat Users List Subject: Re: problems with dbcp Ok. That's the same point I am currently trying to solve. I intentionally leave connections open, but they don't get freed. Perhaps someone else could comment here? -Florian my settings in server.xml--- Resource name=jdbc/TomcatDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/TomcatDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter !-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. -- parameter namemaxActive/name value20/value /parameter !-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit. -- parameter namemaxIdle/name value5/value /parameter !-- Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -- parameter namemaxWait/name value1/value /parameter parameter nameusername/name valuecaspar/value /parameter parameter namepassword/name valuegeheim/value /parameter parameter namedriverClassName/name valuecom.mysql.jdbc.Driver/value /parameter !-- The JDBC connection url for connecting to your MySQL dB. The autoReconnect=true argument to the url makes sure that the mm.mysql JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours. -- parameter nameurl/name valuejdbc:mysql://localhost:3306/tomcatds?autoReconnect=true/value /parameter !-- Umgang mit nicht geschlossenen Statements, Connections und ResultSets. -- parameter nameremoveAbandoned/name valuetrue/value /parameter parameter nameremoveAbandonedTimeout/name value10/value /parameter parameter namelogAbandoned/name valuetrue/value /parameter /ResourceParams Edson Alves Pereira wrote: But removeAbandoned and removeAbandonedTimeout doesn´t close all ResultSet, Statement and Connections even if they are forsaken? -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder: Tomcat Users List Enviada:segunda-feira, 3 de novembro de 2003 9:51 Para: Tomcat Users List Assunto:Re: problems with dbcp Hi, you probably do nor close some statement, resultSet or connection. When using CP one has to do this always explicitly. Tyrex is an alternative CP implementation which has been replaced by DBCP. Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted The machanism is not returning my connection to pool, what do i should do? Do i really need tirex as Persistence Layer? Here is my DBCP configuration: Resource name=jdbc/OracleDS auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/OracleDS parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameter namemaxActive/name value10/value /parameter parameter namemaxIdle/name value30/value /parameter
RE: problems with dbcp
I have here tomcat-4.1.24. -- De: Florian Ebeling[SMTP:[EMAIL PROTECTED] Responder:Tomcat Users List Enviada: segunda-feira, 3 de novembro de 2003 12:52 Para: Tomcat Users List Assunto: Re: problems with dbcp Hi, Edson Alves Pereira wrote: Hello folks, i followed what is written in tomcat-4.1.x´s JDNI DataSource documentation, but i getting this error: java.sql.SQLException: DBCP could not obtain an idle db connection, pool exhausted Edson, which Tomcat versions do you use? I was puzzled why the example would not work and moved from my 4.1.24 to the most recent one, 4.1.29. Now it works without any further changes. I for one found it helpful to use my old configuration and custom app files by specifying CATALINA_BASE as to point to the old tomcat installation dir. -Florian - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: problems with dbcp
I have here tomcat-4.1.24. Then you should certainly try an upgrade. 29 uses DBCP 1.1, which was released like 2 weeks ago or something. But only dbcp.jar does not suffiece, commons-collection (or -pool, cant remember) has changed also. I took the whole new tomcat. -Florian Edson Alves Pereira wrote: - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]