ARM Blocks: ease of use and for loops

Reinier Zwitserloot reinier at zwitserloot.com
Wed Nov 11 13:34:10 PST 2009


The problem is: If you forget to retrofit a filter, or you're just using one
written with java6 or below in mind, then there's no obvious sign that your
resource is not being closed. No compiler error or warning. Not even a
pattern in the code you can detect. You'll notice a month later, when you've
released your product to your customers, who are starting to call in with
strange errors involving full DB pools and such. The fix is to write up a
custom findbugs plugin, or something similar. Given the way findbugs is not
even close to universally used, let alone used with custom plugins, that is
not at all a satisfactory answer.

That's a very serious problem.

--Reinier Zwitserloot



On Wed, Nov 11, 2009 at 10:30 PM, Neal Gafter <neal at gafter.com> wrote:

> On Wed, Nov 11, 2009 at 1:21 PM, Reinier Zwitserloot <
> reinier at zwitserloot.com> wrote:
>
>> Unless all existing filters are rewritten to support Closeable, and their
>> close methods do an instanceof check on the contained Iterator and pass on
>> the close call if they are also ClosableIterators, I don't see how that's
>> going to work.
>
>
> That sounds like a workable approach.
>
>



More information about the coin-dev mailing list