Can you pop your sample app somewhere (as a GitHub project, maybe)? Happy to deploy it and take a look here.
Jon On Fri, Aug 11, 2017 at 11:28 AM, Romain Manni-Bucau <rmannibu...@gmail.com> wrote: > 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 <dmcletc...@gmail.com>: > > > 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. >