× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.






I'm sure the connections aren't closed... :) because of connection pooling. I've found a way to mange open connections with the property maxIdle. For other props see http://commons.apache.org/dbcp/configuration.html.

Initialy, my pool is configured to keep max 2 idle connections. But I can access the pool setting with JConsole (http://amemon.wordpress.com/2007/07/15/monitoring-c3p0-using-jmxjconsole/), and change the settings in runtime.

So, you suggest to ignore the pseudo closed cursors, and close all the connections when needed? I'm pretty ok with that, but my AS admin and other RPG programmers keep warning me on these locks - how it is a strange behavior...

On 23.3.2010. 16:40, Charles Wilt wrote:
Davor,

Are you sure that you've closed the connection?

Doesn't spring use connection pooling? Thus, closing the connection
simply returns it to the pool instead of actually closing it. Which
means the tables aren't closed or even pseduo-closed but left open
which would explain the error you get on the ALTER TABLE

I believe there's a way to tell spring to end all the connections in
the pool. I would suggest that before issuing the ALTER TABLE, you
end the connections in the pool then do the ALTER TABLE then reopen
the connection pool.

HTH,
Charles


On Fri, Mar 19, 2010 at 7:44 PM, Davor<dpoldrugo-Re5JQEeQqe8AvxtiuMwx3w@xxxxxxxxxxxxxxxx> wrote:
Hi there...
we're having some problems with shared read locks on AS400 V5R4, accessed
with jt400.

The problem is described here
http://stackoverflow.com/questions/2476470/db2-jdbc-driver-does-not-release-table-locks

To cut the story short,

- we (Spring) issue an update statement, and table obtains a shared read
lock (normal)
- after we close the statement, the lock is still there (i guess normal)
- after we commit, the locks disappears (normal)
- then, when we issue a SELECT statement, the lock re-appears... and
after closing the ResultSet, Statement, and Connection (Spring does that),
the lock remains (NOT normal)

Do you have any idea, some kinda clue - where is the source of these "never
going away locks"? These are shared read locks, and they don't affect our
application and user experience in no way, but from time to time, we have to
issue some ALTER TABLE statements, and with these locks, we can't.

Thank you very much,
Davor
--
This is the Java Programming on and around the iSeries / AS400 (JAVA400-L) mailing list
To post a message email: JAVA400-L-Zwy7GipZuJhWk0Htik3J/w@xxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/java400-l
or email: JAVA400-L-request-Zwy7GipZuJhWk0Htik3J/w@xxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/java400-l.






As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.