File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Tomcat and the fly likes Dangling connection of tomcat with postgresql database Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Products » Tomcat
Bookmark "Dangling connection of tomcat with postgresql database" Watch "Dangling connection of tomcat with postgresql database" New topic

Dangling connection of tomcat with postgresql database

Varghese Renny

Joined: Jul 11, 2012
Posts: 5
0 down vote favorite

When i am doing in windows when i stop the tomcat, application will release the hold on database, since application will stop with tomcat..But in ubuntu even if i stop the tomcat application is not releasing the access to database

i tried with sudo /etc/init.d/tomcat6 stop
sudo service tomcat6 stop

i can't use pkill since if i kill the process, even connection to database server got released..i needed to start it manually..i only want to release access to database from application..How can i do it?

Any where tomcat is holding the application? or any other process there which is on hold?

Please show me a solution, what makes difference in windows and ubuntu?

Thanks in Advance,
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 17421

Varghese Renny wrote:0 down vote favorite

A webapp written according to accepted standards obtains database connections from a connection pool that is constructed, owned, and maintained by the server. This pool can actually be defined at a level that allows sharing it between multiple webapps, depending on how the server.xml file was configured.

Regardless, since the whole point of having a pool is that the pool holds open database connections so that the system will be spared the overhead of repeatedly creating and destroying them, there's not a whole lot of support for physically closing connections - the pool connections are fa├žades for actual Connection objects, where the pool connection's close() method simply returns the underlying open Connection back to the pool.

If you undeploy a webapp, that should cause the pool to be eligible for garbage collection, which should in turn make the Connection objects collectible, which will eventually shut down the Connection. Without checking the Tomcat source, however, I don't know if there's an explict "terminate pool" API method that Tomcat can use to forcibly cause the pool to clean up on command rather than whenever the garbage collector gets around to it.

All in all, the simplest and most reliable way to release all those connections would be to terminate Tomcat itself. For most uses, that's sufficient.

An IDE is no substitute for an Intelligent Developer.
Rob Spoor

Joined: Oct 27, 2005
Posts: 20279

Tim Holloway wrote:
Varghese Renny wrote:0 down vote favorite

This post was apparently a nearly exact copy-paste from StackOverflow:

Varghese, please BeForthrightWhenCrossPostingToOtherSites.

How To Ask Questions How To Answer Questions
I agree. Here's the link:
subject: Dangling connection of tomcat with postgresql database
It's not a secret anymore!