non-trivial finalize() on AbstractJdbc2Statement

Поиск
Список
Период
Сортировка
От Imran
Тема non-trivial finalize() on AbstractJdbc2Statement
Дата
Msg-id CAG6o=AHE4yfi5E6Ec2FBE=0o3f=QPbN54Fr_HZAysc+m7nJ-Pw@mail.gmail.com
обсуждение исходный текст
Ответы Re: non-trivial finalize() on AbstractJdbc2Statement
Список pgsql-jdbc
Hello

We've been having OOM errors in our applications through GC overhead limits under heave load resources running queries. Inspecting the heap dump, it appears that the finalizer queue is taken up most of the heap space. Almost all of the the finalizer objects I've seen seem to have a jdbc3PreparedStatement object in it. Going through the source code of the driver I see that the 'AbstractJdbc2Statement' has a non-trivial finalize method. I guess this explains why these objects end up in the finalizer queue. Can I clarify the need to having this finalize() method here? It seems to be calling the close() method of the statement which I would have thought is the responsibility of the client building a Statement object. Is there any chance this can be dropped so we don't see these objects ending up in the finalizer queue under heavy load and the jvm running out of memory before the GC threads gets around to 'actually' reclaim the memory?

Also we are using postgres 9.0.4 and the 8.3-604.jdbc3 version of the postgresql jdbc driver.

Cheers
-- Imran

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Florent Guillaume
Дата:
Сообщение: Re: GIT move
Следующее
От: Steven Schlansker
Дата:
Сообщение: Re: GIT move