Re: Remove usage of finalizers ?

Поиск
Список
Период
Сортировка
От Heiko W. Rupp
Тема Re: Remove usage of finalizers ?
Дата
Msg-id 4EFCA605-80FE-4D6F-90CE-C124984C95AB@pilhuhn.de
обсуждение исходный текст
Ответ на Re: Remove usage of finalizers ?  (Vitalii Tymchyshyn <vit@tym.im>)
Ответы Re: Remove usage of finalizers ?
Список pgsql-jdbc
Vitalii,

Am 23.10.2013 um 02:36 schrieb Vitalii Tymchyshyn:

> As for me, introducing server-side leak would be plain wrong. If it will be done, please announce in the list, I will
stoprecommending using postgresql in java projects. 

*relying* on Finalizers to clean up server side state may introduce those leaks in the first place, as
finalizers are not guaranteed to be called at all.
In my case we had 290k Statements in the queue to be finalized, when the JVM started to throw
OutOfMemoryErrors. At that point no one will those finalize() methods be called here.

Also there is no guarantee when the finalizer runs other than after completed construction
and before the memory is finally released by the garbage collector.
Objects to be finalized could thus hold references to pg-server side resources for hours,
which is not what you want for short lived simple statements.

And as Dave said, Statements are supposed to be explicitly close()d by the application.




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

Предыдущее
От: Tom Dunstan
Дата:
Сообщение: Re: Remove usage of finalizers ?
Следующее
От: "Heiko W. Rupp"
Дата:
Сообщение: Re: Remove usage of finalizers ?