Hi few things to check:
1. does psiprobe say if that's the same instances or not? JMX should give you the information I think since it will only list root resources 2. why not using tomee.xml or reosurces.xml to define the datasources - this is the recommanded way? Romain Manni-Bucau @rmannibucau <https://twitter.com/rmannibucau> | Blog <https://blog-rmannibucau.rhcloud.com> | Old Blog <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> | LinkedIn <https://www.linkedin.com/in/rmannibucau> | JavaEE Factory <https://javaeefactory-rmannibucau.rhcloud.com> 2017-08-10 17:22 GMT+02:00 dmcletchie <[email protected]>: > Hi, > > I'm kind of new to TomEE & App servers in general. I Apologize in advance > if I use some incorrect terminology. > > I have set up a web application that connects to a database. > To connect to the database, I'm defining a resource in a context.xml file. > I'm not modifying server.xml. > I'm using the PSI-probe to manage/monitor things. > > My problem is that I keep getting duplicate database connection pools. Or, > I think that I'm getting duplicate pools. > The probe app seems to list 3 Application Resources. but I think that 2 of > them might be linked I can see some logging around the linking. (I see > lines with "Auto-linking resource-ref" in the log file) > > To tried to divide & conquor, I think that narrowed it down to my > context.xml. I created a hello world web app, that has 2 files. One file > extends javax.ws.rs.core.Application, and the other file has a single > jax.ws.rs resource with a single hello world method in it. So, the app > doesn't use the database. it just has 1 method with a one line "hello > world" method. > > Then I created a context file, that looks like this: > <?xml version="1.0" encoding="UTF-8"?> > <Context> > <Resource name="jdbc/foobar" > jtaManaged="true" > auth="Container" > type="javax.sql.DataSource" > driverClassName="oracle.jdbc.OracleDriver" > url="jdbc:oracle:thin:@HHHHHHHH:1521:ORCL" > username="XXXXXXXXX" > password="ZZZZZZZZZZZ" > maxTotal="10" > maxIdle="5" > minIdle="0" > initialSize="2" > maxWaitMillis="1" > /> > </Context> > and put it in META-INF > > I grabbed a clean download of apache-tomee-7.0.3-plus, so that the config > files are all at their default. > I added by helloworld.jar. I added the probe.war, for management. I added > ojdbc8.jar to the libs directory. > I modified tomcat-users.xml so that I could log into the manager & the > probe app. > > When Tomee is not running, and I look at my database, there are no session > from my development machine. When I start the app, there are 4 > connections. (initial size is 2, I have 4 connections, so I think that I > have 2 dbcp pools). > > If I increase my initialSize to 3 & restart the app, then I can see in the > database that I have 6 sessions. (It is an oracle database, so I can see > the connections with the command "select count(*) from v$session where > machine = 'developmentmachine';") > > When I look in the probe, I can see 3 application resources: > > APP RESOURCE USAGE M E B > USER URL DESCRIPTION TYPE > LNK AUTH > /helloWorld openejb/Resource/jdbc/foobar 10 2 0 > XXXXXXXXX jdbc:oracle:thin:@HHHHHHHH:1521:ORCL tomcat-dbcp2 > CONTAINER > /helloWorld jdbc/foobar 10 2 0 > XXXXXXXXX jdbc:oracle:thin:@HHHHHHHH:1521:ORCL tomcat-dbcp2 > Container > /helloWorld openejb/Resource/helloWorld/jdbc/foobar 10 2 0 > XXXXXXXXX jdbc:oracle:thin:@HHHHHHHH:1521:ORCL tomcat-dbcp2 > CONTAINER > > the "E" column is "the number of established connections that can be > reused". so, it's reporting 6 (2 for each resource) but I think that I > have 4, since that's what the database tells me. The AUTH column isn't > exactly the same, 2 are "CONTAINER" and 1 is "Container". so maybe that's > a clue to the linking? > > So - I'm hoping that since this is such a minimal config, someone can tell > me what I'm doing wrong. Do I really have 2 different dbcp pools? or do I > have 1 or 3? Why is the number of session in the database always double > the initialSize number, even though my app is never using the database. > > I'll attach the snippet of the log file. The logging is all at the > defaults, since I just grabbed this install. I can repeat it with > additional logging if that would help. > > Thanks! > > Doug > > > catalina.log.txt (14K) <http://tomee-openejb.979440. > n4.nabble.com/attachment/4682413/0/catalina.log.txt> > > > > > -- > View this message in context: http://tomee-openejb.979440. > n4.nabble.com/datasource-duplication-in-tomee-tp4682413.html > Sent from the TomEE Users mailing list archive at Nabble.com.
