Re: Remove usage of finalizers ?

From: Steven Schlansker <stevenschlansker(at)gmail(dot)com>
To: John R Pierce <pierce(at)hogranch(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Remove usage of finalizers ?
Date: 2013-10-23 17:47:58
Message-ID: C4280E84-5DC2-47E1-B87B-F2A7E681EB3D@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc


On Oct 23, 2013, at 12:22 AM, John R Pierce <pierce(at)hogranch(dot)com> wrote:

> On 10/23/2013 12:06 AM, Vitalii Tymchyshyn wrote:
>> I am not big fan of finalizes. But you propose to remove mechanism that works most times, without introducing anything else.
>> You are saying that as in my incorrect application (and I am 95% sure you've got incorrect application if you are getting finalizing objects piled up) it does not work, let's remove it altogether and make driver also wrong.
>
> as an outsider to this stuff, with only a superficial understanding of these finalizers, it seems to me they should log a warning if anything leaks to them. you don't get rid of them entirely, they provide backup sweeping up of neglected debris..
>

The specific problem with this is that the mere presence of a non-empty finalizer increases the cost of object allocation and deallocation by orders of magnitude (as is claimed by many Java performance resources). All correct applications pretty much have to deallocate these objects explicitly, as the GC can leave the resources lying around for unbounded time. So having these finalizers penalizes the correct applications (which I have not observed in practice, but OP seemingly has) by some amount.

Maybe the best thing would be for the OP to distill the problem down into a self-contained code example so we can verify that there aren't any other errors that might be contributing to this problem? It seems that if the problem was really that big, someone else would have run across it.

Best,
Steven

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Adib Saikali 2013-10-23 17:58:15 Re: Remove usage of finalizers ?
Previous Message John R Pierce 2013-10-23 07:22:46 Re: Remove usage of finalizers ?