Ok i will check. About the "check your thread stack. Note a wrong config can make connections not returning to pool IIRC" how can i check it?
2014-02-13 11:07 GMT-06:00 Romain Manni-Bucau <[email protected]>: > yeah, jmx should give you the information if you follow the pool metrics > Romain Manni-Bucau > Twitter: @rmannibucau > Blog: http://rmannibucau.wordpress.com/ > LinkedIn: http://fr.linkedin.com/in/rmannibucau > Github: https://github.com/rmannibucau > > > > 2014-02-13 17:58 GMT+01:00 José Luis Cetina <[email protected]>: > > Is there anyway to know if my db connections are not returning to the > pool? > > > > > > 2014-02-13 10:46 GMT-06:00 José Luis Cetina <[email protected]>: > > > >> I run my tomee with this parameters > >> > >> export JAVA_OPTS="-Dorg.apache.el.parser.COERCE_TO_ZERO=false -server > >> -Xms3072M -Xmx6144M -XX:PermSize=1024M -XX:MaxPermSize=2048M > >> -Djava.awt.headless=true > >> > >> export CATALINA_OPTS="-Xms3072m -Xmx6144m" > >> > >> Is that what you mean? > >> > >> > >> 2014-02-13 10:42 GMT-06:00 José Luis Cetina <[email protected]>: > >> > >> Sorry for my ignorance but how do i check the thread stack? > >>> > >>> > >>> 2014-02-13 10:40 GMT-06:00 Romain Manni-Bucau <[email protected]>: > >>> > >>> check your thread stack. Note a wrong config can make connections not > >>>> returning to pool IIRC > >>>> Romain Manni-Bucau > >>>> Twitter: @rmannibucau > >>>> Blog: http://rmannibucau.wordpress.com/ > >>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau > >>>> Github: https://github.com/rmannibucau > >>>> > >>>> > >>>> > >>>> 2014-02-13 17:39 GMT+01:00 José Luis Cetina <[email protected]>: > >>>> > Ok. > >>>> > > >>>> > At this moment my webapp in production is loggin me: > >>>> > > >>>> > SEVERE: EjbTransactionUtil.handleSystemException: > >>>> [ajp-bio-8009-exec-1458] > >>>> > Timeout: Pool empty. Unable to fetch a connection in 90 seconds, > none > >>>> > available[size:250; busy:250; idle:0; lastwait:90000]. > >>>> > > >>>> > Pool empty, it means my 250 of 250 are using it? > >>>> > > >>>> > Any advice? > >>>> > > >>>> > > >>>> > > >>>> > > >>>> > > >>>> > 2014-02-13 10:35 GMT-06:00 Romain Manni-Bucau < > [email protected]>: > >>>> > > >>>> >> No it is fine. > >>>> >> Romain Manni-Bucau > >>>> >> Twitter: @rmannibucau > >>>> >> Blog: http://rmannibucau.wordpress.com/ > >>>> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau > >>>> >> Github: https://github.com/rmannibucau > >>>> >> > >>>> >> > >>>> >> > >>>> >> 2014-02-13 17:18 GMT+01:00 José Luis Cetina <[email protected] > >: > >>>> >> > Thanks i already readed. Maybe what is happen is that my webapps > >>>> are not > >>>> >> > returning to the pool the database connection. > >>>> >> > > >>>> >> > I have a question: > >>>> >> > > >>>> >> > If i have a stateles bean using an entitymanager and doing any > kind > >>>> of > >>>> >> > operation in the database, when my method returns the connections > >>>> is the > >>>> >> > connections is closed and returned to the pool?? do i missing > >>>> something? > >>>> >> > > >>>> >> > > >>>> >> > //All my ejbs are like this > >>>> >> > @Stateless > >>>> >> > @TransactionManagement(TransactionManagementType.CONTAINER) > >>>> >> > public class ConektaComprasOnlineGeneradasFacade{ > >>>> >> > > >>>> >> > @PersistenceContext(unitName = "anyName") > >>>> >> > private EntityManager em; > >>>> >> > > >>>> >> > @TransactionAttribute(TransactionAttributeType.REQUIRED) > >>>> >> > public void doSomeStuff(){ > >>>> >> > MyObject x = new MyObject(); > >>>> >> > em.persist(x); > >>>> >> > //when this method is finished and the commit its done the > >>>> >> database > >>>> >> > connection is returned to the pool? do i have to close it? > >>>> >> > } > >>>> >> > > >>>> >> > } > >>>> >> > > >>>> >> > > >>>> >> > Thanks > >>>> >> > > >>>> >> > > >>>> >> > > >>>> >> > 2014-02-13 9:51 GMT-06:00 Howard W. Smith, Jr. < > >>>> [email protected]>: > >>>> >> > > >>>> >> >> also, this one, and you can reach out to tomcat user list, > too... > >>>> >> >> > >>>> >> >> > >>>> >> >> > >>>> >> > >>>> > http://blog.christopherschultz.net/index.php/2009/03/16/properly-handling-pooled-jdbc-connections/ > >>>> >> >> > >>>> >> >> > >>>> >> >> > >>>> >> >> On Thu, Feb 13, 2014 at 10:34 AM, José Luis Cetina < > >>>> >> [email protected] > >>>> >> >> >wrote: > >>>> >> >> > >>>> >> >> > Then if tomee use tomcat-pool is this where the info really > is? > >>>> >> >> > > >>>> >> >> > https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html not > here > >>>> >> >> > > http://commons.apache.org/proper/commons-dbcp/configuration.html > >>>> >> >> > > >>>> >> >> > > >>>> >> >> > 2014-02-13 9:32 GMT-06:00 José Luis Cetina < > [email protected] > >>>> >: > >>>> >> >> > > >>>> >> >> > > What about this info in tomee web page > >>>> >> >> > > > >>>> >> >> > > "Internally, from TomEE 1.5.0, JDBC pools are managed via > >>>> >> Tomcat-pool. > >>>> >> >> > You > >>>> >> >> > > can still switch back to Apache Commons DBCP by adding the > >>>> following > >>>> >> >> > > property: DataSourceCreator dbcp. To get the full list of > >>>> available > >>>> >> >> > > configuration properties, have a look to Apache Commons DBCP > >>>> >> >> > configuration< > http://commons.apache.org/dbcp/configuration.html> > >>>> >> >> > > ." > >>>> >> >> > > > >>>> >> >> > > What is the difference between tomcat pool and dbcp, they > >>>> share the > >>>> >> >> same > >>>> >> >> > > properties? > >>>> >> >> > > > >>>> >> >> > > > >>>> >> >> > > 2014-02-13 9:23 GMT-06:00 Romain Manni-Bucau < > >>>> [email protected] > >>>> >> >: > >>>> >> >> > > > >>>> >> >> > > Hi, > >>>> >> >> > >> > >>>> >> >> > >> some read > >>>> >> >> > >> > >>>> http://commons.apache.org/proper/commons-dbcp/configuration.html;) > >>>> >> >> > >> Romain Manni-Bucau > >>>> >> >> > >> Twitter: @rmannibucau > >>>> >> >> > >> Blog: http://rmannibucau.wordpress.com/ > >>>> >> >> > >> LinkedIn: http://fr.linkedin.com/in/rmannibucau > >>>> >> >> > >> Github: https://github.com/rmannibucau > >>>> >> >> > >> > >>>> >> >> > >> > >>>> >> >> > >> > >>>> >> >> > >> 2014-02-13 16:21 GMT+01:00 José Luis Cetina < > >>>> [email protected] > >>>> >> >: > >>>> >> >> > >> > Hi, im having about 180 users at the same time connected > to > >>>> my > >>>> >> >> webapp, > >>>> >> >> > >> > yesterday i got an mysql exception saying "Ton many > >>>> connections" > >>>> >> >> then > >>>> >> >> > i > >>>> >> >> > >> > read in blogs and update the property max_connections in > >>>> my.cnf > >>>> >> to > >>>> >> >> 500 > >>>> >> >> > >> > connections (i have a stand alone server for database > only > >>>> that > >>>> >> has > >>>> >> >> > >> 16gb of > >>>> >> >> > >> > ram just for the OS and the DB) then in that post > recommend > >>>> to > >>>> >> >> adjust > >>>> >> >> > >> that > >>>> >> >> > >> > value (max_connections) accord to my pool connection. I > use > >>>> a > >>>> >> >> > datasource > >>>> >> >> > >> > resource configured in tomee.xml and i have this > >>>> >> >> > >> > > >>>> >> >> > >> > <Resource id="any" type="DataSource"> > >>>> >> >> > >> > JdbcDriver com.mysql.jdbc.Driver > >>>> >> >> > >> > JdbcUrl ... > >>>> >> >> > >> > UserName xxx > >>>> >> >> > >> > Password xxx > >>>> >> >> > >> > jtaManaged true > >>>> >> >> > >> > initialSize=30 > >>>> >> >> > >> > MaxActive=500 (my old value was 250) > >>>> >> >> > >> > MaxIdle=50 > >>>> >> >> > >> > MaxWait=90000 > >>>> >> >> > >> > MaxWaitTime=90000 > >>>> >> >> > >> > validationQuery=SELECT 1 > >>>> >> >> > >> > testOnBorrow=true > >>>> >> >> > >> > </Resource> > >>>> >> >> > >> > > >>>> >> >> > >> > Then i have this questions: > >>>> >> >> > >> > > >>>> >> >> > >> > 1.What advice can you give me for handle around 180 users > >>>> that > >>>> >> use > >>>> >> >> my > >>>> >> >> > >> app > >>>> >> >> > >> > an hit the database with each action. > >>>> >> >> > >> > I use JSF (@NamedBeans) + EJB (All my EJBS are statless) > + 1 > >>>> >> >> > SessionBean > >>>> >> >> > >> > (@Named) for each users. > >>>> >> >> > >> > > >>>> >> >> > >> > 2. Which is the difference between MaxIdle and MaxActive? > >>>> >> >> > >> > > >>>> >> >> > >> > 3. Which is the default timeout for close inactive > >>>> connections > >>>> >> and > >>>> >> >> > what > >>>> >> >> > >> is > >>>> >> >> > >> > the name of the property? > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> >> > >> > I will be happy with any kind of advice. > >>>> >> >> > >> > > >>>> >> >> > >> > I use 2 servers with this configuration and tomee and > both > >>>> of > >>>> >> them > >>>> >> >> > read > >>>> >> >> > >> to > >>>> >> >> > >> > other server where the database is (2 webapp server + 1 > db > >>>> >> server). > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> >> > >> > > >>>> >> ------------------------------------------------------------------- > >>>> >> >> > >> > *José Luis Cetina* > >>>> >> >> > >> > > >>>> >> ------------------------------------------------------------------- > >>>> >> >> > >> > >>>> >> >> > > > >>>> >> >> > > > >>>> >> >> > > > >>>> >> >> > > -- > >>>> >> >> > > > >>>> ------------------------------------------------------------------- > >>>> >> >> > > *José Luis Cetina* > >>>> >> >> > > > >>>> ------------------------------------------------------------------- > >>>> >> >> > > > >>>> >> >> > > >>>> >> >> > > >>>> >> >> > > >>>> >> >> > -- > >>>> >> >> > > >>>> ------------------------------------------------------------------- > >>>> >> >> > *José Luis Cetina* > >>>> >> >> > > >>>> ------------------------------------------------------------------- > >>>> >> >> > > >>>> >> >> > >>>> >> > > >>>> >> > > >>>> >> > > >>>> >> > -- > >>>> >> > > ------------------------------------------------------------------- > >>>> >> > *José Luis Cetina* > >>>> >> > > ------------------------------------------------------------------- > >>>> >> > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > ------------------------------------------------------------------- > >>>> > *José Luis Cetina* > >>>> > ------------------------------------------------------------------- > >>>> > >>> > >>> > >>> > >>> -- > >>> ------------------------------------------------------------------- > >>> *José Luis Cetina* > >>> ------------------------------------------------------------------- > >>> > >> > >> > >> > >> -- > >> ------------------------------------------------------------------- > >> *José Luis Cetina* > >> ------------------------------------------------------------------- > >> > > > > > > > > -- > > ------------------------------------------------------------------- > > *José Luis Cetina* > > ------------------------------------------------------------------- > -- ------------------------------------------------------------------- *José Luis Cetina* -------------------------------------------------------------------
