Re: WARNING: ROLLBACK: no transaction in progress

From: Bjørn T Johansen <btj(at)havleik(dot)no>
To: Dmitry Tkach <dmitry(at)openratings(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: WARNING: ROLLBACK: no transaction in progress
Date: 2003-06-09 18:14:50
Message-ID: 1055182490.2357.54.camel@pennywise.havleik.no
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Well, I just saw it as more convenient to use an existing connection
pooling, i.e Tomcat's (since it is running under Tomcat). But what you
are saying, is that the "right" way is to implement a connection polling
class myself?

BTJ

On Mon, 2003-06-09 at 16:33, Dmitry Tkach wrote:
> Bjørn T Johansen wrote:
>
> >Hmmm, I am using the connection pooling in Tomcat to get database
> >connection, don't know if that would make a difference....
> >
> >
> I bet, it does.
> I suspect, when you do c.close(), it doesn't really close the
> connectino, but rather just returns it to the pool... When it does that,
> it, probably, does rollback() on it to make sure that, if somebody
> forgot to complete his transaction, it doesn't get into the pool that
> way....
>
> Frankly, I could never understand why people are so inclined to use all
> those third party connection pooling mechanisms - they have all kinds of
> problems - they 'swallow' native sql exceptions, they do funny stuff
> with transactions etc, etc... The main problem being, they are 'black
> boxes' - you never know what exactly happens to the connection
> before/after you get your hands on it.... :-(
> This seems way too much price to pay for the benefit of not having to
> implement the pool on your own (which is, more or less, just having a
> Vector of active connections somewhere) ...
>
> Dima
>
>
> >
> >BTJ
> >
> >On Thu, 2003-06-05 at 02:55, Barry Lind wrote:
> >
> >
> >>Bjørn,
> >>
> >>I can't reproduce your problem. I used the attached program that I
> >>wrote from the information you provided below and it doesn't have any
> >>such warning in the log files.
> >>
> >>thanks,
> >>--Barry
> >>
> >>
> >>Bjørn T Johansen wrote:
> >>
> >>
> >>>I am using the new version 7.3.3 where I also compiled the jdbc driver..
> >>>
> >>>The code I use looks something like this..:
> >>>
> >>> Connection conn = DBPool.getInstance().getConnection();
> >>> PreparedStatement stmt = null;
> >>> Statement stmt2 = null;
> >>>
> >>> try
> >>> {
> >>> conn.setAutoCommit(false);
> >>>
> >>> String sql= "Insert into table () Values (?)";
> >>> stmt = conn.prepareStatement(sql);
> >>> int ant = stmt.executeUpdate();
> >>> stmt.close();
> >>> stmt = null;
> >>> conn.commit();
> >>> conn.close();
> >>> conn = null;
> >>> }
> >>> catch (SQLException ex)
> >>> {
> >>> conn.rollback();
> >>> conn.close();
> >>> throw new Exception;
> >>> }
> >>>
> >>>
> >>>
> >>>Hope this helps...
> >>>
> >>>BTJ
> >>>
> >>>
> >>>On Wed, 2003-05-28 at 11:53, Dave Cramer wrote:
> >>>
> >>>
> >>>
> >>>>What version of the driver are you using, this sounds like a bug
> >>>>
> >>>>Can you send some code to re-create it?
> >>>>
> >>>>Dave
> >>>>On Tue, 2003-05-27 at 06:33, Bjorn T Johansen wrote:
> >>>>
> >>>>
> >>>>
> >>>>>Why do I get this in my logfile, when I never call rollback, only
> >>>>>commit? Should I just ignore this or??
> >>>>>
> >>>>>
> >>>>>Regards,
> >>>>>
> >>>>>BTJ
> >>>>>
> >>>>>
> >>>>>-----------------------------------------------------------------------------------------------
> >>>>>Bjørn T Johansen (BSc,MNIF)
> >>>>>Executive Manager
> >>>>>btj(at)havleik(dot)no Havleik Consulting
> >>>>>Phone: +47 67 54 15 17 Conradisvei 4
> >>>>>Fax: +47 67 54 13 91 N-1338 Sandvika
> >>>>>Cellular: +47 926 93 298 http://www.havleik.no
> >>>>>-----------------------------------------------------------------------------------------------
> >>>>>"The stickers on the side of the box said "Supported Platforms: Windows
> >>>>>98, Windows NT 4.0,
> >>>>>Windows 2000 or better", so clearly Linux was a supported platform."
> >>>>>-----------------------------------------------------------------------------------------------
> >>>>>
> >>>>>
> >>>>>---------------------------(end of broadcast)---------------------------
> >>>>>TIP 2: you can get off all lists at once with the unregister command
> >>>>> (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
> >>>>>
> >>>>>
> >>>>>
> >>______________________________________________________________________
> >>
> >>import java.sql.*;
> >>
> >>public final class test25 {
> >> private static String DB_URL = "jdbc:postgresql://localhost:5432/test";
> >> private static String DB_USER = "test";
> >> private static String DB_PASS = "test";
> >>
> >> public static void main(String[] args) throws Exception {
> >> // load driver
> >> Class.forName("org.postgresql.Driver");
> >> // open connection to postgres
> >> Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASS);
> >> PreparedStatement stmt = null;
> >>
> >> try
> >> {
> >> conn.setAutoCommit(false);
> >> //This test assumes a table 'test' exists with one column 'cola' of type text
> >> String sql= "Insert into test (cola) values (?)";
> >> stmt = conn.prepareStatement(sql);
> >> stmt.setString(1,"foo");
> >> int ant = stmt.executeUpdate();
> >> stmt.close();
> >> stmt = null;
> >> conn.commit();
> >> conn.close();
> >> conn = null;
> >> }
> >> catch (SQLException ex)
> >> {
> >> conn.rollback();
> >> conn.close();
> >> throw ex;
> >> }
> >> }
> >>}
> >>
> >>
--
-----------------------------------------------------------------------------------------------
Bjørn T Johansen (BSc,MNIF)
Executive Manager
btj(at)havleik(dot)no Havleik Consulting
Phone : +47 67 54 15 17 Conradisvei 4
Fax : +47 67 54 13 91 N-1338 Sandvika
Cellular : +47 926 93 298 http://www.havleik.no
-----------------------------------------------------------------------------------------------
"The stickers on the side of the box said "Supported Platforms: Windows
98, Windows NT 4.0,
Windows 2000 or better", so clearly Linux was a supported platform."
-----------------------------------------------------------------------------------------------

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Dmitry Tkach 2003-06-09 18:59:09 Re: WARNING: ROLLBACK: no transaction in progress
Previous Message Carlos 2003-06-09 16:15:01 Retrieving the server time and date -- java??