Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #38758

Re: it's Closeable, but I don't want to close() it yet.

X-Received by 2002:ac8:3826:: with SMTP id q35mr609307qtb.31.1551382875240; Thu, 28 Feb 2019 11:41:15 -0800 (PST)
X-Received by 2002:a81:9bd3:: with SMTP id s202mr611541ywg.76.1551382875051; Thu, 28 Feb 2019 11:41:15 -0800 (PST)
Path csiph.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!m21no5209050qta.0!news-out.google.com!y15ni2305qta.0!nntp.google.com!m21no5209044qta.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups comp.lang.java.programmer
Date Thu, 28 Feb 2019 11:41:14 -0800 (PST)
In-Reply-To <263782da-7ef6-466c-8cb3-da394bef0501@googlegroups.com>
Complaints-To groups-abuse@google.com
Injection-Info glegroupsg2000goo.googlegroups.com; posting-host=84.74.101.34; posting-account=UjEXBwoAAAAOk5fiB8WdHvZddFg9nJ9r
NNTP-Posting-Host 84.74.101.34
References <slrnq7dcgo.cfl.avl@logic.at> <709a1f3b-fc99-4bd0-a8b8-866092bb7ae9@googlegroups.com> <slrnq7dnnu.cfl.avl@logic.at> <8e1597a2-5c18-4fd1-83a4-7667e4d11e77@googlegroups.com> <slrnq7fkg8.cfl.avl@logic.at> <23a8128b-5c54-45ba-bfd0-2f7dda078517@googlegroups.com> <fdb81cf4-61e8-4b09-a62f-c97253f23550@googlegroups.com> <f71c1d05-cc27-4ecb-bea0-c32f03cd698e@googlegroups.com> <692da128-9302-41cf-a8f7-2a2a5903bf82@googlegroups.com> <3a4ed199-10a5-4ea3-882e-8d598a82dccf@googlegroups.com> <ab24ddfd-0235-4d43-8b9c-20cb8083df28@googlegroups.com> <6f5e7b36-af8f-4f1b-b7fe-f53305b8d591@googlegroups.com> <263782da-7ef6-466c-8cb3-da394bef0501@googlegroups.com>
User-Agent G2/1.0
MIME-Version 1.0
Message-ID <c2f2bba3-b6af-4c7b-9a9d-a39e7c7bae0f@googlegroups.com> (permalink)
Subject Re: it's Closeable, but I don't want to close() it yet.
From bursejan@gmail.com
Injection-Date Thu, 28 Feb 2019 19:41:15 +0000
Content-Type text/plain; charset="UTF-8"
Content-Transfer-Encoding quoted-printable
Lines 70
Xref csiph.com comp.lang.java.programmer:38758

Show key headers only | View raw


Mostlikely ResultSet is anyway auto closing in the
sense that when you have reached the last row,
it will anyway close. Not sure about that.

But it should be automatically closed when you read 
the next page via the same prepared statement, 
since the documentation says:

"A ResultSet object is automatically closed when 
the Statement object that generated it is closed, 
re-executed, or used to retrieve the next result 
from a sequence of multiple results." 
https://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html

On Thursday, February 28, 2019 at 8:33:44 PM UTC+1, burs...@gmail.com wrote:
> Since Eclipse says "potential", it is not sure about its
> judgement. Probably it uses some heuristics to find
> close leaking, and in your case,
> 
> it produces maybe a false positive. All these checks
> that different IDEs offer work by inspecting a small
> part of your code and work by producing
> 
> a best guess, through some hand coded heuristics,
> that there could be a problem.
> 
> They are not theorem provers that 100% can tell
> whether something is a problem or not.
> 
> On Thursday, February 28, 2019 at 8:26:34 PM UTC+1, Eric Douglas wrote:
> > On Thursday, February 28, 2019 at 2:12:55 PM UTC-5, burs...@gmail.com wrote:
> > > Yes in the old code you had:
> > > 
> > >                          while (rs.next()) {
> > >                               r++;
> > >                          }
> > >                          rs.close();
> > > 
> > > And since rs.next() can throw an exception,
> > > it could escape a closing.
> > > 
> > > But try-resource has the ability to close
> > > as well, when the try-resource block
> > > 
> > > has an exception.
> > > 
> > > There were nice blog entries in the past
> > > from Oracle John Rose, but cant find any
> > > of them anymore. The Oracle blogs currently
> > > 
> > > look like shit, what did they do?
> > > 
> > 
> > 1) Is the confusion with Eclipse or Oracle?  I googled it and it went straight to Oracle (https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html) which even specifically mentioned my scenario, simply putting an executeQuery inside the try block, for which Eclipse complains not explicitly closing a ResultSet is a potential resource leak.
> > 
> > 2) I don't see the scenario in the Oracle doc for re-using a variable.  Should I be able to close a RecordSet and call executeQuery again to that same variable in that same method?
> > 
> > 3) How should we close a resource such as InputStream or OutputStream?  I had written the API in such a way if I'm passing them into a method to be read once, that method is closing them.  We should never close them while reading/writing them and expect them to get closed after the call by the method that opened them?

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-02-27 15:51 +0000
  Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-27 08:48 -0800
    Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-02-27 19:03 +0000
      Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-27 11:09 -0800
        Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-02-28 12:20 +0000
          Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 06:19 -0800
            Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 06:52 -0800
              Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 08:24 -0800
                Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 08:34 -0800
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 09:00 -0800
                Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 11:12 -0800
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 11:26 -0800
                Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 11:33 -0800
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 11:37 -0800
                Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 11:41 -0800
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 11:48 -0800
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 12:51 -0800
                Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-03-01 08:47 +0000
                Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-03-01 09:31 +0000
                Re: it's Closeable, but I don't want to close() it yet. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2019-03-03 02:01 +0100
                Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-03-04 09:38 +0000
                Re: it's Closeable, but I don't want to close() it yet. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2019-03-04 12:26 +0100
                Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-03-05 14:34 +0000
                Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-03-05 07:34 -0800
                Re: it's Closeable, but I don't want to close() it yet. Arne Vajhøj <arne@vajhoej.dk> - 2019-03-04 13:59 -0500
  Re: it's Closeable, but I don't want to close() it yet. Marcel Mueller <news.5.maazl@spamgourmet.org> - 2019-02-28 08:30 +0100
    Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-02-28 19:10 +0000
      Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 11:34 -0800
      Re: it's Closeable, but I don't want to close() it yet. Marcel Mueller <news.5.maazl@spamgourmet.org> - 2019-02-28 22:24 +0100
        Re: it's Closeable, but I don't want to close() it yet. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2019-02-28 23:25 +0100
          Re: it's Closeable, but I don't want to close() it yet. Andreas Leitgeb <avl@logic.at> - 2019-03-01 09:43 +0000
  Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 12:11 -0800
    Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 13:49 -0800
      Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 13:52 -0800
        Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 13:59 -0800
          Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-02-28 16:17 -0800
  Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 12:26 -0800
  Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-02-28 13:44 -0800
  Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-03-01 07:40 -0800
    Re: it's Closeable, but I don't want to close() it yet. bursejan@gmail.com - 2019-03-01 08:34 -0800
  Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-03-11 06:27 -0700
    Re: it's Closeable, but I don't want to close() it yet. Eric Douglas <e.d.programmer@gmail.com> - 2019-03-11 07:24 -0700

csiph-web