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


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

Re: Not closing connections and statements

From Martin Gregorie <martin@address-in-sig.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: Not closing connections and statements
Date 2016-08-13 00:21 +0000
Organization A noiseless patient Spider
Message-ID <nolp6i$qd2$1@dont-email.me> (permalink)
References <87shuakxjq.fsf@Equus.decebal.nl> <nol6er$gf5$1@dont-email.me> <87k2fllkjf.fsf@Equus.decebal.nl> <nolhsq$b0s$1@dont-email.me> <87bn0xlgn6.fsf@Equus.decebal.nl>

Show all headers | View raw


On Sat, 13 Aug 2016 01:19:25 +0200, Cecil Westerhof wrote:

> But the finally block is no use. As long as the program is running the
> connection is used.
>
No sir! As Eric said, by putting the DB close statement in a finally 
block you guarantee that the connectioin will be closed, causing the DBMS 
to flush buffers, release connection resources etc even if the program 
crashes horribly.


> Only when the program terminates the connection
> could/should be closed. But I do not really know when it is closed.
> (Certainly not when others use the code.)
>
Indeed, but I don't know any good reason for letting a user open or close 
a DB connection unless the user can choose which of a number of database 
instances to access: even in a utility like an SQL client that a 
developer or DBA might use to inspect and manipulate a database its 
unusual fore the user to open or close the connection - all the ones I';ve 
used expect the DB name, user name and password to be on the command line 
or prompted for. After that the program opens the connection without 
waiting for a command and closes it when the user gives the quit/exit 
command.

Open should be handled by the program's initialisation code which should 
end the run if the DB failed to open. Otherwise it should close the 
connection before the program exits, no matter what caused the exit.

Exactly the same considerations apply regardless of whether the DB client 
program is a single user interactive client or a multi-user application 
server.

> With the information I have
> now it looks like it is not really a problem when the connection is not
> closed when it is used during the complete run time of the program.
>
Maybe its not a problem for that application, but IMO not making sure 
that the connection(s) are closed when the program or user session 
terminates is a bad habit to get into: at the very least it may clog up 
the DB server if the unclosed connections persist and at worst it will 
bite you when least expected. 

Murphy is never mocked.


-- 
martin@   | Martin Gregorie
gregorie. | Essex, UK
org       |

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


Thread

Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-12 13:59 +0200
  Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 09:15 -0400
    Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 09:39 -0400
    Re: Not closing connections and statements Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-12 22:31 +0200
      Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 22:04 -0400
        Re: Not closing connections and statements Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-13 07:55 +0200
  Re: Not closing connections and statements Martin Gregorie <martin@address-in-sig.invalid> - 2016-08-12 19:01 +0000
    Re: Not closing connections and statements Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-12 22:35 +0200
      Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 21:52 -0400
    Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-12 23:55 +0200
      Re: Not closing connections and statements Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-12 18:16 -0400
        Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-13 01:19 +0200
          Re: Not closing connections and statements Martin Gregorie <martin@address-in-sig.invalid> - 2016-08-13 00:21 +0000
            Re: Not closing connections and statements Gunter Herrmann <gunter.herrmann@earthlink.net> - 2016-08-17 16:38 -0400
      Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 21:58 -0400
        Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-13 12:50 +0200
      Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 21:59 -0400
      Re: Not closing connections and statements Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-13 08:47 +0200
        Re: Not closing connections and statements Andreas Leitgeb <avl@logic.at> - 2016-08-13 08:05 +0000
          Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-13 12:21 +0200
          Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-13 09:54 -0400
        Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-13 12:19 +0200
        Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-13 10:04 -0400
          log4j RollingFileAppender (was: Not closing connections and statements) Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-14 22:24 +0200
            Re: log4j RollingFileAppender Arne Vajhøj <arne@vajhoej.dk> - 2016-08-14 21:01 -0400
        Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-13 11:58 -0400
          logging (was: Not closing connections and statements) Marcel Mueller <news.5.maazl@spamgourmet.org> - 2016-08-14 23:46 +0200
    Re: Not closing connections and statements Arne Vajhøj <arne@vajhoej.dk> - 2016-08-12 21:44 -0400
  Re: Not closing connections and statements Florian Weimer <fw@deneb.enyo.de> - 2016-08-13 16:33 +0200
    Re: Not closing connections and statements Cecil Westerhof <Cecil@decebal.nl> - 2016-08-13 17:34 +0200

csiph-web